我試圖執行以下語句,以逃避單引號(即使用兩個單引號):逃逸單引號在SQL Server
declare @year varchar(max)
set @year = '111,11';
exec ('SELECT * FROM SplitValues(' + @year + ','','')');
我甚至試過用char(39)
代替報價:
declare @year varchar(max)
set @year = '111,11';
exec ('SELECT * FROM SplitValues(' + @year + ',' + char(39) + ',' + char(39) + ')');
但它沒有幫助。這是我在這個網站上找到的唯一兩個解決方案。任何幫助?
這是簡化的查詢清理你所有的問題:
declare @year varchar(max)
set @year = '111,11';
SELECT * FROM SplitValues(@year , ',')
我要做到這一點,但使用動態查詢。
爲什麼你需要在這裏使用EXEC? – Bridge 2013-03-14 12:19:39
這是因爲我現在工作的查詢非常複雜,無法在此處發佈。這只是我想要做的一瞥。 – Saksham 2013-03-14 12:24:23
可能的重複* [在SQL Server中替換單引號](http://stackoverflow.com/questions/1440733/replace-single-quotes-in-sql-server)*。 – 2016-01-25 14:50:13