0
我试图运行下面的动态SQL语句:返回行计数使用动态SQL
@Tbl,@Fld和@LookupValue已全部按表搜索,字段(或列)设为搜索和列值进行比较。
DECLARE @Sql AS VARCHAR(500)
SET @Sql = 'SELECT COUNT(*)
FROM ' + @Tbl +
' WITH (NOLOCK)
WHERE ' + @Fld + ' = ''' + @LookupValue + ''''
EXEC(@Sql)
我想将结果存储到一个变量,所以我可以检查是否有任何返回的行。该语句位于正在检查多个表和字段的WHILE构造中。
如果找到了记录,那么我想显示:
SET @Sql = 'SELECT ' + @Fld +
' FROM ' + @Tbl +
' WITH (NOLOCK)
WHERE ' + @Fld + ' = ''' + @LookupValue + ''''
EXEC(@Sql)
你需要使用临时表来存储计数值 – radar 2014-11-14 18:50:44
@RADAR,已经是SQL Server的,因为有MySQL中没有'NOLOCK'表提示。 – Rahul 2014-11-14 18:51:52
@Rahul,你是对的。 – radar 2014-11-14 18:54:55