当前位置:编程学习 > C#/ASP.NET >>

INSERT INTO 语句的语法错误。

Microsoft JET Database Engine (0x80040E14)
INSERT INTO 语句的语法错误。
/InsertItem.asp, 第 24 行





原码:
<%@LANGUAGE="VBSCRIPT" CODEPAGE="936"%>
<!--#include file="Connections/connComm.asp" -->
<%
userid=Request.Form("userid")
PayType=Request.Form("PayType")
RecName=Request.Form("RecName")
RecPhone =Request.Form("RecPhone")
Recmail =Request.Form("Recmail")
RecAddress =Request.Form("RecAddress")
RecZipcode =Request.Form("Zipcode")
OrderDate = Year(Now())&"-"&Month(Now())&"-"&Day(Now())
RecDate =Request.Form("RecDate")
Notes =Request.Form("Notes")
orderSum=Request.Form("TotalPrice")
Strsql ="'"&userid &"',#"&OrderDate&"#,"&orderSum&",'"&RecName&"','"&RecAddress&"','"&RecMail&"','"&RecPhone&"','"&PayType&"',#"&RecDate&"#,'"&RecZipcode&"','"&Notes&"',0"
%>
<%
MM_editQuery = ""
MM_editConnection = MM_connComm_STRING
MM_editQuery = "insert into OrderTable Values("&Strsql&")"
Set MM_editCmd = Server.CreateObject("ADODB.Command")
MM_editCmd.ActiveConnection = MM_editConnection
MM_editCmd.CommandText = MM_editQuery
MM_editCmd.Execute
MM_editCmd.ActiveConnection.Close
%>
<%
Rs.Close()
Set Rs = Nothing
%>
<%
Set Rs = Server.CreateObject("ADODB.Recordset")
Rs.ActiveConnection = MM_connComm_STRING
Rs.Source = "SELECT top 1 OrderNo  FROM Order  ORDER BY OrderNo DESC"
Rs.CursorType = 0
Rs.CursorLocation = 2
Rs.LockType = 1
Rs.Open()

Rs_numRows = 0
OrderNo = Rs.Fields.Item("OrderNo").Value
%>
<%
ComNoStr = Session("comNoStr")
AmountStr=Session("AmountStr")
ComNoArray = Split(ComNoStr,",")
AmountArray=Split(AmountStr,",") 
MM_editQuery = ""
MM_editConnection = MM_connComm_STRING
for i = 0 to Ubound(ComNoArray)
MM_editQuery = "insert into OrderInfo Values("&OrderNo&","&ComNoArray(i)&","&AmountArray(i)&")"
Set MM_editCmd = Server.CreateObject("ADODB.Command")
MM_editCmd.ActiveConnection = MM_editConnection
MM_editCmd.CommandText = MM_editQuery
MM_editCmd.Execute
MM_editCmd.ActiveConnection.Close
Next
%>
<%
Rs.Close()
Set Rs = Nothing
%>
<%
Response.Redirect("PayType.asp?OrderNo="&OrderNo&"&TotalPrice="&orderSum&"")
%> --------------------编程问答-------------------- 你把最终的sql内容show出来,放到查询器中试试,看看提示哪里有问题 --------------------编程问答-------------------- 具体怎么操作  单独插入数据可以   都使用变量不行 --------------------编程问答-------------------- 你定个断点 把 SQL字符 贴出来啊 !这么长的拼接内容 看的头晕。。 --------------------编程问答-------------------- <%
MM_editQuery = ""
MM_editConnection = MM_connComm_STRING
MM_editQuery = "insert into OrderTable Values("&Strsql&")"
Set MM_editCmd = Server.CreateObject("ADODB.Command")
MM_editCmd.ActiveConnection = MM_editConnection
MM_editCmd.CommandText = MM_editQuery
MM_editCmd.Execute
MM_editCmd.ActiveConnection.Close
%>
--------------------编程问答-------------------- 我看你values()里面每个值都没有加''包起来,你这些都是数值型的? --------------------编程问答-------------------- 有文本型的  你的QQ多少啊? --------------------编程问答-------------------- 不要有特殊符號 '' --------------------编程问答-------------------- MM_editQuery = ""
这句什么意思 --------------------编程问答-------------------- SQL语句用我的方法写,很容易调试

Dim mySQLinsert As String
     mySQLinsert = "INSERT INTO CodeBar(Code, CurDate) VALUES (@Code, @CurDate)"
     Dim cmd As New OleDbCommand(mySQLinsert, myCon)
     cmd.Parameters.Add(New OleDbParameter("@Code", strIncoming))
     cmd.Parameters.Add(New OleDbParameter("@CurDate", Today())) --------------------编程问答-------------------- 参考 SQL复制表结构和数据即INSERT INTO语句 --------------------编程问答-------------------- MM_editQuery = "insert into OrderTable Values(" & Strsql & ")"
要加空格的 --------------------编程问答-------------------- 什么数据库?Access?Ms SQL? --------------------编程问答-------------------- 会不会是各列类型不符

无法将 char 值转换为 smallmoney。该 char 值的语法有误。
补充:.NET技术 ,  VB.NET
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,