首页 新闻 会员 周边

sqlserver存储过程的单引号问题

0
悬赏园豆:10 [待解决问题]

存储过程在后台传参数的时候传给变量@NodeCodes的格式是  

'''P100'',''P101'',''P102'',''P103'',''P104'',''P105'',''P106'''

这样的。

在存储过程里会直接解析成

 

'P100','P101','P102','P103','P104','P105','P106'

这样。

怎样能把变量nodecodes的格式变成传进去的那种样式呢?

 

着急在线等!

DrMundo的主页 DrMundo | 初学一级 | 园豆:123
提问于:2015-08-19 14:24
< >
分享
所有回答(3)
0

是where 字段 In(@NodeCodes) 吗?

包子wxl | 园豆:186 (初学一级) | 2015-08-19 14:36
0

'''P100'',''P101'',''P102'',''P103'',''P104'',''P105'',''P106'''=》'P100','P101','P102','P103','P104','P105','P106'?你生成的时候直接生成不就行了

稳稳的河 | 园豆:4216 (老鸟四级) | 2015-08-19 14:41
0

首先你需要知道单引号在这个地方是作为转义字符存在的  也就是说传入的参数中若有''的话  实际上就会被转义为一个单引号

对你的参数来说  '''P100'',''P101'',''P102'',''P103'',''P104'',''P105'',''P106'''  实际上就是一个内容为【''P100'',''P101'',''P102'',''P103'',''P104'',''P105'',''P106''】的字符串  转义之后当然就是你所说的解析后的结果

 

如果想保留原来的格式的话  把参数中每一个单引号都替换成''应该就可以解决了~~

小白菜T | 园豆:564 (小虾三级) | 2015-08-20 11:12
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册