SQL Server遍历所有表统计行数
Posted s5689412
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了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), @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
主要是为了找出数据库里面记录最多的表,用来做性能测试用。
来自SQL Server 2005/2008遍历所有表统计行数,实测在SQL Server 2012 LocalDB上可用。
以上是关于SQL Server遍历所有表统计行数的主要内容,如果未能解决你的问题,请参考以下文章