问题描述
StringBuildersql=newStringBuilder();sql.Append("insertintomx_bbs(name_id,name,type,content,farther_id,datatime,fujian_name,fujian_true_namem,fujian_name2,fujian_true_name2)values('");sql.Append(idd+"','");sql.Append(dt.Rows[0]["name"]+"','");sql.Append(dt.Rows[0]["bumen"]+"','");sql.Append(textarea.Text+fujian+"','");sql.Append(fujian+fujian2+"',");sql.Append(id+",'");sql.Append(System.DateTime.Now.ToShortDateString()+"','");sql.Append(fujian_tname+"','");sql.Append(fujian_name+"','");sql.Append(fujian_tname2+"','");sql.Append(fujian_name2+"')");
解决方案
解决方案二:
--错误已经很明显了insertintomx_bbs(这里你只指定了10项)values(这里你却指定了11项)。。自己好好检查吧。。
解决方案三:
用SqlParameter多好,看得也清楚,也不容易出错。像你这样拼串的方式,要是本本框里输入单引号等其他SQL关键字,SQL执行就会出错,甚至被注入攻击。name_id,name,type,content,farther_id,datatime,fujian_name,fujian_true_namem,fujian_name2,fujian_true_name2123456789101sql.Append(idd+"','");2sql.Append(dt.Rows[0]["name"]+"','");3sql.Append(dt.Rows[0]["bumen"]+"','");4sql.Append(textarea.Text+fujian+"','");5sql.Append(fujian+fujian2+"',");6sql.Append(id+",'");7sql.Append(System.DateTime.Now.ToShortDateString()+"','");8sql.Append(fujian_tname+"','");9sql.Append(fujian_name+"','");10sql.Append(fujian_tname2+"','");11sql.Append(fujian_name2+"')");你拼进去11个值了。
解决方案四:
嗯,是啊,比较明显的错误
解决方案五:
values指定的项和表后指明的项数不等
解决方案六:
楼主你够细心的啊
解决方案七:
晓风残月怎么没来~string.Format()
解决方案八:
引用1楼pt1314917的回复:
C#code--错误已经很明显了insertintomx_bbs(这里你只指定了10项)values(这里你却指定了11项)。。自己好好检查吧。。
够仔细的ptzhu!
解决方案九:
又来晚了,只能接点分走人了.
解决方案十:
引用1楼pt1314917的回复:
C#code--错误已经很明显了insertintomx_bbs(这里你只指定了10项)values(这里你却指定了11项)。。自己好好检查吧。。
正解啊,接点分吧