sql中引用变量的方法(转义字符')

sql中引用变量我一直都不知道怎么弄,今天总算知道了:在asp.net中引用变量是"+变量名+"(双引双加),在sql中表示为'+变量名+'(单引单加<注意:拼接字符串本身需要一对单引号...sql中单引号为转义字符,两个单引号代表一个单引号>)...个人理解,如有错误,欢迎指出...




declare @a varchar(20),@b varchar(200)
set @a='chai' /*字符类型赋值必须要单引号*/
print @a
print ('select * from products where productname='+'chai')       /*拼接需要一个单引号*/
print ('select * from products where productname='+''+@a+'')     /*这里'+@a+'=@a,另外一个单引号为拼接需要*/

print ('select * from products where productname='+''''+@a+'''')

set @b='select * from products where productname='+@a           /*结果同上*/
print @b

set @b='select * from products where productname='+''''+@a+''''    /*这里'+@a+'代表引用@a=chai
还要在chai外面加个单引号,sql中单引号是转义字符,需要两个单引号表示一个单引号,最外层单引号为拼接需要*/
print @b

set @b='select * from products where productname='+@a+''
print @b

set @b='select * from products where productname='''+@a+''''
print @b

               

*********************************************************************************************************************

declare @a varchar(20),@b varchar(200)

set @a='chai'

set @b='select * from products where productname='+''''+@a+''''             结果为:       select * from products where productname='chai'

完全是字符串拼接'select * from products where productname='闭合的一对单引号

''''+@a+'''' 拼接一个@a并在@a代表的值外面加个单引号,前面四个单引号其中绿色部分代表一个单引号,红色部分为拼接需要的单引号,后面四个同理........

拼接字符串需努力
             

原文地址:https://www.cnblogs.com/bluedy1229/p/1984812.html