首先我知道,在sql数据库中,字符型变量要用单引号,数字型变量不用单引号 。+ 是连接两个字符串用的。如 string str =" select * from 表一 where name ='"+Textbox1.Text+"' ",直接写 name = 'Textbox1.Text' 则把Textbox1.Text当成里常量。第一双引号应该是和最后一个双引号匹配,'"+Textbox1.Text+"' 中为什么要用双引号,而且+ 还在里面?? 纠结里很久,能指出原理最好,很感谢!
2 回答
慕丝7291255
TA贡献1859条经验 获得超6个赞
第一个双引号并非和最后一个匹配,而是就近匹配,匹配的是 '"+Textbox1.Text+"' 中的前面的双引号;而 '"+Textbox1.Text+"' 中后面的双引号才和str最后的双引号匹配。
+ 连接字符串。由于name应该是varchar或者nvarchar类型的,正如你所说的,旁边要加单引号。str中的TextBox1.Text作为变量被解析,这样放在语句中,连接后,就能成为一个合规的查询语句了。
- 2 回答
- 0 关注
- 1054 浏览
添加回答
举报
0/150
提交
取消