在sql語句中,我們難免會用到單引號嵌套的時候,但是直接嵌套肯定是不行的,java中用反斜槓做轉義符也是不行的,在sql中是用單引號來做轉義符的。
比如下面例子是存儲過程裡查詢時的語句示例
exec cndoup_getpageofrecords @pagesize=10,@currentpage=1,@columns='*',@tablename='ROOM',@condition='ROOMTYPElike ‘ %標准間%' ', @asccolumn='ROOMID', @bitordertype=1, @pkcolumn='ROOMID'
紅色部分是會報錯的,應該寫成 @condition= 'ROOMTYPElike ‘ ‘%標准間%' ‘ ', 藍色部分不是雙引號,而是兩個單引號
當拼接JS字符串的時候,雙引號裡面一定要是單引號,單引號裡面要是雙引號。如此循環!不過全部雙引號也可以,就是雙引號裡面的雙引號需要轉義!
--用兩個引號
1.exec sp_test 'where loginname= ''jay'' '
2.create proc sp_test
(
@condition varchar(200)
)
as
declare @sql varchar(2000)
set @sql = 'select *from UserInfo '
set @sql = @sql + @condition
exec (@sql)
wish helpful