to llansquenet(佣兵小队长.NET) 你说的在“调试的时候可以把SQL语句Show出来,”怎么输出,我还不懂,, 请指教,to 楼主,你怕弄错,也没有必要用sqlstr+=sqlstr+="')";这个呀,(不是解决你的问题)我想问,你报错信息:未处理的“System.Data.SqlClient.SqlException”类型的异常出现在 system.data.dll 中。 那你的 .dll文件中是什么??是不是说出来大家好解决一点
1. LiSDN(LOCK ON) is correct, you are adding an extra "')" in your sqlchange sqlstr+=sqlstr+="')"; ===> sqlstr += "')";2. you should use parameterized query, since your method is susceptible to SQL inject attack, or you at least need to do string sqlstr= String.Format("insert into password (商品ID,商品价格,商品数量) values ('{0}','{1}','{2}')", this.textBox12.Text.Replace("'","''"), this.textBox11.Text.Replace("'","''"), this.textBox10.Text.Replace("'","''"));
好!
数据库表名称:商品
商品ID char(10) /primary key
商品价格 char(10) /可以 null
商品数量 char(10) /可以null 插入的数据在TextBox中写入的,我想我写入的字符
应该不会超长的。
sqlstr+="insert into password (商品ID,商品价格,商品数量) values ( ";
sqlstr+="'";
sqlstr+=this.textBox12.Text;
sqlstr+="',";
sqlstr+=this.textBox11.Text;
sqlstr+=",";
sqlstr+=this.textBox10.Text;
sqlstr+=")";
To: lese9(乐色.Net)
实验插入数据时在TextBox 中没有用引号To: LiSDN(LOCK ON)
哦,我对:商品ID 商品价格 商品数量 用char型数据只是为了方便。
sqlstr+=sqlstr+="')";意思是怕我自己把Sql语句写错而用字符串想加,那样的
话思路要明了点,仅此而已。
如果查询分析器能够正常运行,而这样不行的就是权限的问题
在其中注意单引号要替换成双单引号
请指教,to 楼主,你怕弄错,也没有必要用sqlstr+=sqlstr+="')";这个呀,(不是解决你的问题)我想问,你报错信息:未处理的“System.Data.SqlClient.SqlException”类型的异常出现在 system.data.dll 中。 那你的 .dll文件中是什么??是不是说出来大家好解决一点
sqlstr+=sqlstr+="')";
===>
sqlstr += "')";2. you should use parameterized query, since your method is susceptible to SQL inject attack, or you at least need to do
string sqlstr= String.Format("insert into password (商品ID,商品价格,商品数量) values ('{0}','{1}','{2}')",
this.textBox12.Text.Replace("'","''"),
this.textBox11.Text.Replace("'","''"),
this.textBox10.Text.Replace("'","''"));
sqlstr+="insert into password (商品ID,商品价格,商品数量) values ( ";
sqlstr+="'";
sqlstr+=this.textBox12.Text;
sqlstr+="','";
sqlstr+=this.textBox11.Text;
sqlstr+="','";
sqlstr+=this.textBox10.Text;
sqlstr+=sqlstr+="')";
錯誤就出在這個sqlstr上面!!!
sqlstr="insert into password(商品ID,商品价格,商品数量) values('"+TextBox12.Text+",'"+TextBox11.Text+"','"+TextBox10.Text+"')";
應該是這個樣子取值才對!
哈哈,我自己多加了个引号。谢谢大家!结贴
To:
saucer(思归) LiSDN(LOCK ON)
在次感谢你们的细心,你们细心的工作学习态度我要向你们学习。
To:
The rest
感谢大家的帮助.我第一次发贴,人人有分!谢了.
string sqlstr="";
sqlstr+="insert into password(商品ID,商品价格,商品数量) values(";
sqlstr+="'\"+";
sqlstr+=this.textBox12.Text;
sqlstr+="+\"','\"+";
sqlstr+=this.textBox11.Text;
sqlstr+="+\"','\"+";
sqlstr+=this.textBox10.Text;
sqlstr+="+\"')";就是上面這樣子的,肯定不會錯!;)
PS;想問問,password這張表的字段為甚麼會是中文名???