更新数据ExecuteNonQuery() 附近有语法错误

StringBuilder sqlstr1 = new StringBuilder();
sqlstr1.Append(" update StuZhanhao set stuno = '" + ((TextBox)(GridView1.Rows[e.RowIndex].Cells[0].Controls[0])).Text.Trim() + "',");
sqlstr1.Append("password = '" + ((TextBox)(GridView1.Rows[e.RowIndex].Cells[1].Controls[0])).Text.Trim() + "',");
sqlstr1.Append("stuname = '" + ((TextBox)(GridView1.Rows[e.RowIndex].Cells[2].Controls[0])).Text.Trim() + "',");
sqlstr1.Append("stuleixing = '" + ((TextBox)(GridView1.Rows[e.RowIndex].Cells[3].Controls[0])).Text.Trim() + "',");
using (SqlConnection mycon = new SqlConnection(myconstr))
{
using (SqlCommand mycom = new SqlCommand(sqlstr1.ToString(), mycon))
{
mycon.Open();
int row = mycom.ExecuteNonQuery();
}
}
老提示','有错误,求大神教。

多了 个 ,

sqlstr1.Append("stuleixing = '" + ((TextBox)(GridView1.Rows[e.RowIndex].Cells[3].Controls[0])).Text.Trim() + "' ");追问

改了之后他提示'password'附近有语法错误,抓狂!!!

追答

你都是字符串 ,字符串中的特殊字符你要做处理的 , 比如字符串中包含 ‘ ,
你把sql 接出来 很明了 这样不是那么好看

温馨提示:内容为网友见解,仅供参考
第1个回答  2012-12-16
路过。。

为什么说我的executenonquery ")"附近有语法错误?
因为你的sql语句拼接错了。最快的解决办法是在这句加个断点,运行的时候鼠标移动过去,展开它的CommandText属性,点击放大镜,复制粘贴sql语句,直接在数据库里面执行看看。

c# executeNonQuery()附近 语法有误 急,高分
if (hold_n == 1) \/\/判断当前是添加,还是修改操作 { SqlCommand command1 = new SqlCommand("insert into 设备设施信息表 values(@ID,@name,@编号,@型号,@数量,@生产厂商,@投产日期,@安装地点,@所属部门,@是否备用,@负责人)", MyMean.MyCon);command1.Parameters.Add("@ID", SqlDbType....

更新数据ExecuteNonQuery() 附近有语法错误
sqlstr1.Append("stuleixing = '" + ((TextBox)(GridView1.Rows[e.RowIndex].Cells[3].Controls[0])).Text.Trim() + "' ");

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

cmd.ExecuteNonQuery();第一行‘=’附近有语法错误,错在哪里了??
SqlCommand cmd=new SqlCommand("updata Customers set CompanyName='"+ CompanyName+"',ContactName='"+ContactName+"',Address="'+Address+"'where CustomerID='"+CustomerID+""",cn);\/\/\/错误updata->update 正确为:SqlCommand cmd=new SqlCommand("update Customers set CompanyName='"+ Compan...

cmd.ExecuteNonQuery();'(' 附近有语法错误。
values(@UserName,@Password)";OleDbParameter[] para = new OleDbParameter[]\/\/我用的是ACCESS,你是SQL的话及换成SQL即可,SQL的写法应该是SqlParameter []{ new OleDbParameter("@UserName",Tname),new OleDbParameter("@Password",Pwd)};cmd.Parameters.AddRange(para);cmd.ExecuteNonQuery();

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

command.ExecuteNonQuery();后面总是显示')' 附近有语法错误 请各位高 ...
"insert into stdent" + "values(@s_no,@s_name)"拼接成的语句是 insert into stdentvalues(@s_no,@s_name)少了一个空格。

com.ExecuteNonQuery();附近语法错误问题
SQL语句有问题:insert into table values();少了後括号 SQL.AppendLine("INSERT INTO M_USER"); SQL.AppendLine(" (USERN,PASSW)"); SQL.AppendLine(" VALUES('" + this.textBox1.Text.Trim() + "','" + this.textBox2.Text.Trim() + "')");...

com.ExecuteNonQuery();附近有语法错误
把你的sqlstr打印出来放到数据库上执行看好使么。

相似回答