declare @recordcount int declare @tablename nvarchar(20) declare @sql nvarchar(4000)set tablename = N'xxx'set @sql = N'select @recordcount = count(*) from '+@tablename exec sp_executesql @sql,N'@recordcount int output',@recordcount outputselect @recordcount
Declare @recordcount Int Declare @TableName Varchar(100) Declare @Sql Nvarchar(4000) Set @TableName='' --输入要查询的表名 Set @Sql=N'Select @recordcount=Count(*) from '+@TableName EXEC sp_executesql @Sql,N'@recordcount Int Output',@recordcount Output Select @recordcount
rfq(任凤泉)得方法我试过了,不行。另外,如果是在exec中执行'select * into #temp_table from '+@tablename,当中生成得临时表如何保存下来呢,现在我是一执行完临时表就不见了。
declare @tablename nvarchar(20)
declare @sql nvarchar(4000)set tablename = N'xxx'set @sql = N'select @recordcount = count(*) from '+@tablename
exec sp_executesql @sql,N'@recordcount int output',@recordcount outputselect @recordcount
Declare @TableName Varchar(100)
Declare @Sql Nvarchar(4000)
Set @TableName='' --输入要查询的表名
Set @Sql=N'Select @recordcount=Count(*) from '+@TableName
EXEC sp_executesql @Sql,N'@recordcount Int Output',@recordcount Output
Select @recordcount