查询数据库每张表记录条数
2016-07-13 13:04
555 查看
创建存储过程:
CREATE PROCEDURE [dbo].[spDB_Table_RecordCount]
AS
BEGIN
DECLARE @tname nvarchar(50)
DECLARE @count int
DECLARE @exesql nvarchar(200)
DECLARE My_Cursor CURSOR FOR (SELECT name FROM SysObjects where xtype='U')
OPEN My_Cursor;
CREATE TABLE #tempTable(tname nvarchar(50),rcount int);
FETCH NEXT FROM My_Cursor INTO @tname;
WHILE @@FETCH_STATUS = 0
BEGIN
SET @exesql='SELECT @_count=COUNT(*) FROM '+@tname
EXEC sp_executesql @exesql
,N'@_count int out'
,@_count=@count out
INSERT INTO #tempTable(tname,rcount) values(@tname,@count);
FETCH NEXT FROM My_Cursor INTO @tname;
END
CLOSE My_Cursor;
DEALLOCATE My_Cursor;
SELECT * FROM #tempTable ORDER BY rcount DESC;
END
CREATE PROCEDURE [dbo].[spDB_Table_RecordCount]
AS
BEGIN
DECLARE @tname nvarchar(50)
DECLARE @count int
DECLARE @exesql nvarchar(200)
DECLARE My_Cursor CURSOR FOR (SELECT name FROM SysObjects where xtype='U')
OPEN My_Cursor;
CREATE TABLE #tempTable(tname nvarchar(50),rcount int);
FETCH NEXT FROM My_Cursor INTO @tname;
WHILE @@FETCH_STATUS = 0
BEGIN
SET @exesql='SELECT @_count=COUNT(*) FROM '+@tname
EXEC sp_executesql @exesql
,N'@_count int out'
,@_count=@count out
INSERT INTO #tempTable(tname,rcount) values(@tname,@count);
FETCH NEXT FROM My_Cursor INTO @tname;
END
CLOSE My_Cursor;
DEALLOCATE My_Cursor;
SELECT * FROM #tempTable ORDER BY rcount DESC;
END
相关文章推荐
- Redis之——CentOS 6.5安装配置redis
- Oracle SQL总结
- 通过Oracle透明网关连接Sybase
- Redis源码解析:30发布和订阅
- mac上mysql不能插入中文问题
- Mysql字符串连接函数 CONCAT()与 CONCAT_WS()
- Oracle Database 12c SQL Fundamentals I Exam Guide Exam 1Z0-061 学习笔记
- oracle关闭数据库被hang住的解决办法
- memcache与memcached的区别
- sql语句中having的使用例子
- 渗透测试工具sqlmap基础教程
- 数据篇之JDBC连接MySQL
- sql语句中GROUP BY 和 HAVING的使用
- Warning: mysql_connect(): No such file or directory 解决方案总结(操作系统: Mac)
- Django连接MySql
- 源码-PL/SQL从入门到精通-第二章-PL/SQL基本概念-Part 1
- centos 7 redis 安装
- Key-Value数据库 Redis
- mysql长连接和短连接的问题
- Servlet、MySQL中文乱码