declare @tbl varchar(10), @sql Nvarchar(1000), @count intselect @tbl='tablename' 
set @sql ='select @count=COUNT(*) from [' +@tbl+ ']'
exec sp_executesql @sql, N'@count int output',@count OUTPUT
select @count
执行之后@count = null,
请问,如何获得这个值。急!!

解决方案 »

  1.   

    declare @tbl varchar(10), @sql Nvarchar(1000), @count intselect @tbl='tablename' 
    set @sql ='select @count=COUNT(*) from [' +@tbl+ ']'
    exec sp_executesql @sql, N'@count int output',@count OUTPUT
    select @count
      

  2.   

    你未将@count参数定义为输出declare @tbl varchar(10), @sql Nvarchar(1000), @count intselect @tbl='tablename' 
    set @sql ='select @count=COUNT(*) from [' +@tbl+ ']'
    exec sp_executesql @sql, N'@count int output',@count output
    select @count
      

  3.   

    declare @tbl varchar(10), @sql Nvarchar(1000), @count intselect @tbl='tablename' 
    set @sql ='select @count=COUNT(*) from [' +@tbl+ ']'
    exec sp_executesql @sql, N'@count int output',@count output
    select @count