sql server存儲過程中解決單引號的問題

 一:目的想在sql中插入''號,例如:select count(*)from user where name='tom'
       a)使用轉義字符:select char(39)或select char(39)+''
                             查詢的結果是:'
         例如:select char(39) + '44555'+ char(39)
                            查詢的結果是:'4455'
      b) 使用特別的字符來替代:''''<====>''
         例如:  

ALTER PROCEDURE [dbo].[TEST]
@i_NAME   NVARCHAR(10)
as        
DECLARE @sql1   NVARCHAR(100);
BEGIN
    SET @sql1='SELECT * FROM USERS WHERE NAME='
    SET @sql1=@sql1+''''+@i_NAME+''''
    EXEC (@sql1)
END
執行後輸出的sql語句是:
    'SELECT * FROM USERS WHERE NAME='tom'

發佈了214 篇原創文章 · 獲贊 11 · 訪問量 27萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章