C# 字符串中连接变量为什么要用加号‘“+name+”’

首先我知道,在sql数据库中,字符型变量要用单引号,数字型变量不用单引号。+是连接两个字符串用的。如stringstr="select*from表一wherename='... 首先我知道,在sql数据库中,字符型变量要用单引号,数字型变量不用单引号 。+ 是连接两个字符串用的。如 string str =" select * from 表一 where name ='"+Textbox1.Text+"' ",直接写 name = 'Textbox1.Text' 则把Textbox1.Text当成里常量。第一双引号应该是和最后一个双引号匹配,'"+Textbox1.Text+"' 中为什么要用双引号,而且+ 还在里面?? 纠结里很久,能指出原理最好,很感谢! 展开
 我来答
三月的前奏
推荐于2017-11-25 · 超过41用户采纳过TA的回答
知道小有建树答主
回答量:131
采纳率:0%
帮助的人:86.8万
展开全部
你等于是在一个字符串中插入一个特定的字符,sql的表达式你应该清楚吧,等于之后加两个单引号,至于单引号后面的双引号是把你最前面的一个双引号联系起来,
等于就是"****" + *** + "***"的字符串拼接,传入你自己声明的变量
OrphousV
2013-07-14 · TA获得超过176个赞
知道小有建树答主
回答量:210
采纳率:100%
帮助的人:195万
展开全部
第一个双引号并非和最后一个匹配,而是就近匹配,匹配的是 '"+Textbox1.Text+"' 中的前面的双引号;而 '"+Textbox1.Text+"' 中后面的双引号才和str最后的双引号匹配。

+ 连接字符串。由于name应该是varchar或者nvarchar类型的,正如你所说的,旁边要加单引号。str中的TextBox1.Text作为变量被解析,这样放在语句中,连接后,就能成为一个合规的查询语句了。
追问

好像不对,

‘“+name+”’前面的是单引号,里面是双引号,而且这样是正确的,专门写过程序。“ ‘ +name+’ ”像这样定义字段都是错误的,不能再vs中通过。

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
上海389Elle
2013-07-14
知道答主
回答量:1
采纳率:0%
帮助的人:1464
展开全部
+ 用来连接字符串
F1帮助应该有关于这个关键字(+)的解释!
即 + 前后都是字符串
Textbox1.Text的值本来就是字符串类型的
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
miniapp6KZPTyUR9UWez
2013-07-14 · TA获得超过1729个赞
知道大有可为答主
回答量:7286
采纳率:24%
帮助的人:939万
展开全部
这个双引号是外面的,不是Textbox1.Text的
追问
好像不对,

‘“+name+”’前面的是单引号,里面是双引号,而且这样是正确的,专门写过程序。“ ‘ +name+’ ”像这样定义字段都是错误的,不能再vs中通过。
追答
string str =" select * from 表一 where name ='"+Textbox1.Text+"'  "

Textbox1.Text前面的加号前的双引号跟select前的双引号对应。OK?
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式