有人可以帮我动态搜索存储过程吗?SQL Server存储过程困境
这是我的存储过程:
DECLARE mycursorForCountry CURSOR FOR
SELECT CountryNames
FROM [Countries].[dbo].[World]
WHERE UserID = @userID
OPEN mycursorForCountry
FETCH NEXT FROM mycursorForCountry INTO @CountryNames
WHILE (@@FETCH_STATUS = 0)
BEGIN
INSERT INTO @CountryTbl
SELECT DISTCINT *
FROM ufn_Split((@CountryNames),',')
FETCH NEXT FROM mycursorForCountry INTO @CountryNames
END
CLOSE mycursorForCountry
DEALLOCATE mycursorForCountry
DECLARE @SQL nvarchar(MAX)
SET @SQL = 'SELECT * FROM [Information].[dbo].[Media] WHERE Country_Name IN('[email protected]+')'
EXEC sp_executesql @SQL
我得到一个错误:
Msg 102, Level 15, State 1, Line 260
Incorrect syntax near 'AFRICA'
为什么你在这里需要动态SQL语句?虽然你可以在查询中通过'@ CountryNames' .. – Shaharyar
@Shaharyar这是我的代码的一部分,因为我有其他部分来查询 – Clifford
你可以给我们一个关于@CountryNames值的示例吗? – Hadi