动态SQL查询问题 - SQL Server

时间:2016-10-24 05:57:09

标签: sql-server sql-server-2008

我正在为寻呼目的编写动态查询。下面是可执行查询的最后一部分,当我打印它并在不同的窗口运行时它工作正常。但是当我使用 exec 时,它会显示红色波形,以便在附加图像中显示部件(CAST(@pint_StartRowIndex AS VARCHAR))。

谁能告诉我为什么我会收到这个错误?如果我使用打印而不是执行,则不会出现任何错误,并且执行打印的查询时没有错误。

enter image description here

1 个答案:

答案 0 :(得分:1)

尝试这样:

exec ('SELECT * from table where Rank BETWEEN CAST ('+ @start + 'as nvarchar)' + ' AND cast (' +  @end + 'as nvarchar)')

引用除了@start和@end

之外的所有字符串