SQL模糊查詢語句拼接時單引號'問題


下面以存儲過程查詢所有為例,非存儲過程(或不是查詢所有將*替換為你想要查詢的列即可)更為簡單,

語法:select * from 表名 where 列名 like '%條件%' 

拼接后的set @變量名 = 'select * from 表名 where ' + @條件 + ' like' + '''' + '%' + @傳入的值 + '%'+''''       --①

例如:set @str = 'select * from Manger where ' + @tiaojian + ' like' + '''' + '%' + @value + '%'+'''' 中 '''' 第一個'和最后一個'代表的意思與like外的單引號'相同,而相當於C#中的字符串拼接的標識---"。中間的''(兩個單引號)才代表單引號,因為SQL語句不支持"(雙引號),寫''兩個的原因就是識別出'是要用往like后面、%前面的單引號'(例如:like'%),①最后的''''與上面同理。

這樣就理解了為什么是''''(4個單引號)


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM