我是新人,这是我的第一个问题。
我正在尝试将值插入数据库,然后收到错误消息
')'附近的语法不正确。
和cmd.ExecuteNonQuery()
突出显示。这是我的代码:
con.Open()
cmd = New SqlCommand("INSERT INTO orders ('" + IDProduct.Text + "')", con)
cmd.ExecuteNonQuery()
con.Close()
答案 0 :(得分:8)
首先,从不,从不 从不构建像这样的SQL查询。改为使用参数化查询。
其次,你在sql命令中缺少“VALUES”。
INSERT INTO orders VALUES ( .... )
修改强>
第三,正如marc_s建议的那样,指定列名也是个好主意。这样你以后就可以避免一些意外。
答案 1 :(得分:2)
SQL语句INSERT INTO的语法有两种形式
您没有指定列名
INSERT INTO table VALUES (value1, value2, value3,...)
或指定列名称和值
INSERT INTO table (col1, col2, col3,...)
VALUES (value1, value2, value3,...)
当指定了所有字段值时,应使用第一种情况 当您要插入特定列的值时,应使用第二种情况
答案 2 :(得分:1)
应使用值:
INSERT INTO table_name
VALUES (value1, value2, value3,...)
答案 3 :(得分:0)
插入查询语法为:
insert into <tablename> values(col1 <datatype>,col2 <datatype>)
你错过了values
这就是为什么你会错误地修改这一行:
cmd = New SqlCommand("INSERT INTO orders values ('" + IDProduct.Text + "')", con)