我需要爲光標寫一個動態查詢來獲取表的索引名稱。光標的動態查詢
嘗試1:
DECLARE @Cur AS Cursor
EXECUTE SP_EXECUTESQL N'SET @Cur = CURSOR fast_forward for
SELECT IndexColumn = i.name
FROM sys.indexes i
INNER JOIN sys.tables t ON t.object_id = i.object_id
WHERE
T.Name = ''' + @TableName + ''''
錯誤:附近有語法錯誤 '+'。
嘗試2:
DECLARE @sqlstatement nvarchar(max)
SET @sqlstatement = 'DECLARE @Cur AS CURSOR fast_forward for
SELECT IndexColumn = i.name
FROM sys.indexes i
INNER JOIN sys.tables t ON t.object_id = i.object_id
WHERE
T.Name = ''' + @TableName + ''''
PRINT(@sqlstatement)
EXEC sp_executesql @sqlstatement
錯誤:附近有語法錯誤FAST_FORWARD'。
更大的問題是,你真的需要光標嗎? – 2014-09-29 13:25:06