')'附近的语法不正确。尝试将值插入数据库时

时间:2012-06-23 21:18:00

标签: asp.net sql vb.net visual-studio-2010 sql-server-2008

我是新人,这是我的第一个问题。

我正在尝试将值插入数据库,然后收到错误消息

  

')'附近的语法不正确。

cmd.ExecuteNonQuery()突出显示。这是我的代码:

con.Open()
cmd = New SqlCommand("INSERT INTO orders ('" + IDProduct.Text + "')", con)
cmd.ExecuteNonQuery()
con.Close()

4 个答案:

答案 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)