cmd.ExecuteNonQuery(); INSERT INTO 语句的语法错误。

我用在Access数据库中用这句插入语句可以插入数据,但是在这里就报语法错误。
代码如下:
public partial class register : System.Web.UI.Page
{
string str_cnn = "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=";
string str_sourcefile = "App_Data\\DATA.mdb";
OleDbConnection cnn;
OleDbCommand cmd;
OleDbDataReader datar;
string str_sql;
protected void Button1_Click(object sender, EventArgs e)
{
string str_conn = str_cnn + MapPath(str_sourcefile);
cnn = new OleDbConnection(str_conn);
cnn.Open();

string _name, _pwd;
_name = txt_name.Text;
_pwd = txt_pwd.Text;
str_sql = "INSERT INTO user (user_name,user_pwd) values ('" + _name + "','" + _pwd + "')";
cmd = new OleDbCommand(str_sql, cnn);
cmd.ExecuteNonQuery();

cnn.Close();
}
}

简单,
你打断点调试,代码执行到INSERT INTO 这句时,看看str_sql 的文本即sql语句,复制出来放到数据库里直接执行,看是否能执行。

不能执行,那就是SQL语句有错误;
能执行,再调试代码看看在哪儿出的错。
温馨提示:内容为网友见解,仅供参考
第1个回答  2015-04-23
把错误截图贴出来才能帮你啊!本回答被提问者采纳
第2个回答  2020-04-13
兄弟,5年了,问题解决了吗?我现在碰到这个问题了

cmd.ExecuteNonQuery(); INSERT INTO 语句的语法错误。
你打断点调试,代码执行到INSERT INTO 这句时,看看str_sql 的文本即sql语句,复制出来放到数据库里直接执行,看是否能执行。不能执行,那就是SQL语句有错误;能执行,再调试代码看看在哪儿出的错。

使用cmd.ExecuteNonQuery();时,出现insert into语法错误
int n = (int)cmd.ExecuteScalar();OleDbCommand cmd1 = new OleDbCommand("insert into AccountTable (date,earning,eatery,life,capture,bleeding,borrow,loan,remark) values (@date,@earning,@eatery,@life,@capture,@bleeding,@borrow,@loan,@remark)";, conn);cmd1.ExecuteNonQuery();应该是这...

cmd.ExecuteNonQuery();'(' 附近有语法错误。
cmd.CommandText = sql;备注:如果你的username和password是变量的话直接这样写就可以了。如果这2个是你要插入的字符串,那就换成下面的写法 先定义变量:string Tname="username";string Pwd="password";string sql = string.Format("insert into T_Users(UserName,Password) values('{0}','{1}'...

下面代码运行时,在cmd.ExecuteNonQuery() 代码报错 “ ',' 附近有语...
cmdstring = "insert into 用户 values(@姓名,@密码)"

cmd.ExecuteNonQuery()总是显示INSERT INTO 语句的语法错误
回答:亲,我现在也遇到了类似的 问题,结果显示“ExecuteNonQuery()进行insert语句总是出现找不到输出表info”,请问你是怎样解决的? 帮帮忙了

cmd.ExecuteNonQuery();括号附近有语法错误,错在哪里了??
using (SqlCommand cmd = conn.CreateCommand()){ cmd.CommandText = "delete from T_Numbers";cmd.ExecuteNonQuery();\/\/没有把连接对象con加给命令对象cmd,加一句 cmd.Connection=con;}

...插入数据时总是提示 cmd.ExecuteNonQuery();这行有错。
;oledbCon.Open();string sql = "insert into scxggxx" + " values'" +scxbh.Text ... \/\/定义一个sql字符串 OleDbCommand cmd = new OleDbCommand(sql); \/\/用上sql MessageBox.Show(sql); \/\/先显示一下SQL语句 \/\/如果无错删除这行 cmd.ExecuteNonQuery();ComonDataView();...

cmd.ExecuteNonQuery();提示错误。求解答
string strSQL =string.Format( " insert into [book]([user],[password]) values ('{0}' , '{1}'",TextBox1.Text.Trim(), TextBox2.Text.Trim());

执行到cmd.ExecuteNonQuery();句时提示错误信息:',' 附近有语法错误...
string sqlstr = "update stuff set row_num = '" + row_num + "', name = " + name + ", zizhi = " + zizhi + ", jixing = " + jixing + ", duty = " + duty + " where name = '" + name + "'";中 你有些用 ' ',有些不用,都是string ...

cmd.ExecuteNonQuery();'“?”附近有语法错误。
你查一查你的Message数据表中是不是应该还有一个不允许为null的字段,而你在这一句insert语句中却没有对它进行赋值,建议你重新调试下你的sql语句

相似回答