當我編譯沒有任何問題,但是當我執行這個存儲過程,我得到:附近有語法錯誤「」在SQL動態查詢
附近有語法錯誤「」
我不能爲我的生命找出其中的問題是:
DECLARE @sql nvarchar(4000)
SET @sql = 'SELECT idea, id, posted_by
FROM
(idea,id, posted_by, ROW_NUMBER() OVER(ORDER BY ' + @sortExpression + ') as RowNum
FROM ideas e
INNER JOIN buckets d ON
e.bucket_id = d.id
WHERE e.bucket_id = ' + CONVERT(nvarchar(10), @bucketId) + '
) as EmpInfo
WHERE RowNum BETWEEN ' + CONVERT(nvarchar(10), @startRowIndex) +
' AND (' + CONVERT(nvarchar(10), @startRowIndex) + ' + '
+ CONVERT(nvarchar(10), @maximumRows) + ') - 1'
EXEC sp_executesql @sql
您可以輸出'@ sql'變量並在此處發佈結果。準備好的語句是正確的,但串聯的字符串可能不是。這意味着'EXEC'功能導致錯誤。 –
該子查詢看起來像缺少其「SELECT」。 –
使用「print(@sql)」在'EXEC' –