五一七教育网
您的当前位置:首页SQLServer2005/2008遍历所有表统计行数

SQLServer2005/2008遍历所有表统计行数

来源:五一七教育网


在SQL Server 2005/2008中的当前数据库中遍历所有表显示所有表的行数 SQL Server DECLARE CountTableRecords CURSOR READ_ONLY FOR SELECT sst.name, Schema_name(sst.schema_id) FROM sys.tables sst WHERE sst.TYPE = 'U' DECLARE @name VARCHAR(80), @sche

在SQL Server 2005/2008中的当前数据库中遍历所有表显示所有表的行数 SQL Server $velocityCount-->
DECLARE CountTableRecords CURSOR READ_ONLY FOR 
 SELECT sst.name, 
 Schema_name(sst.schema_id) 
 FROM sys.tables sst 
 WHERE sst.TYPE = 'U' 
DECLARE @name VARCHAR(80), 
 @schema VARCHAR(40) 

OPEN CountTableRecords 

FETCH NEXT FROM CountTableRecords INTO @name, @schema 

WHILE ( @@FETCH_STATUS <> -1 ) 
 BEGIN 
 IF ( @@FETCH_STATUS <> -2 ) 
 BEGIN 
	PRINT @name
 DECLARE @sql NVARCHAR(1024) 
	SET @sql='DECLARE @count INT SELECT @count=COUNT(1) FROM ' + Quotename(@schema) 
 + 
 '.' + Quotename(@name) +' PRINT @count'
 EXEC Sp_executesql @sql 
 END 

 FETCH NEXT FROM CountTableRecords INTO @name, @schema 
 END 

CLOSE CountTableRecords 

DEALLOCATE CountTableRecords 

GO
显示全文