当前位置:Gxlcms > 数据库问题 > SQL Server遍历所有表统计行数

SQL Server遍历所有表统计行数

时间:2021-07-01 10:21:17 帮助过:6人阅读

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遍历所有表统计行数

标签:table   print   pen   from   serve   alc   _id   tables   sch   

人气教程排行