当前位置:  数据库>sqlserver

sql 查询所有表的记录数的三种实现方法

    来源: 互联网  发布时间:2014-08-29

    本文导语:  完整代码如下。 --方法1,利用系统函数sp_MSforeachtable,任何表名都支持 CREATE TABLE #temp (TableName VARCHAR (255), RowCnt INT) EXEC sp_MSforeachtable 'INSERT INTO #temp SELECT ''?'', COUNT(*) FROM ?' SELECT TableName, RowCnt FROM #temp ORDER BY TableName DROP TABLE #te...

完整代码如下。

--方法1,利用系统函数sp_MSforeachtable,任何表名都支持
CREATE TABLE #temp (TableName VARCHAR (255), RowCnt INT)
EXEC sp_MSforeachtable 'INSERT INTO #temp SELECT ''?'', COUNT(*) FROM ?'
SELECT TableName, RowCnt FROM #temp ORDER BY TableName
DROP TABLE #temp

--方法2,自己写函数,有问题,因为数据库用户表名USER,可能和系统表冲突,修改后可以正常运行,结果正确
declare @sql varchar(8000),@count int,@step int
set nocount on
--@step越大运行速度越快,但如果太大会造成生成的sql字符串超出限制导致语句不完整出错,建议为50
set @step = 50

if object_id(N'tempdb.db.#temp') is not null
drop table #temp
create table #temp (name sysname,count numeric(18))

if object_id(N'tempdb.db.#temp1') is not null
drop table #temp1
create table #temp1 (id int identity(1,1),name sysname)
insert into #temp1(name)
select name from sysobjects where xtype = 'u';
set @count = @@rowcount while @count>0
begin
set @sql = ''
select @sql = @sql + ' select ''' + name + ''',count(1) from ' + name + ' union'
from #temp1 where id > @count - @step and id 

    
 
 

您可能感兴趣的文章:

  • 如何实现连接一次数据库,提交多个sql语句。(sql的批处理)
  • 我想把csdn的论坛改成一个软件平台,另外增加数据查询功能,聊天功能,不知怎样实现比较好?我想用jbuider 7+SQL server实现,不知如何?
  • SQL语句实现SQL Server 2000及Sql Server 2005日志收缩(批量)
  • SQL Server设置主键自增长列(使用sql语句实现)
  • 如何实现DOS下用Turbo C 连接SQL Server 7?
  • 在SQL server 2000中用JAVA实现图片存储
  • 如何实现用jsp将sql server 的数据备份出来!并指定存放路径!
  • 如何实现图片上传啊,而且我想把它记录在SQL SERVER中!!有空请帮我!!!
  • 用oracle pl/sql 从A unix机器,去读取B unix机器上的一个文件,怎么实现?
  • 用SQL语句实现替换字符串
  • 请问在 Linux 下如何用代码实现连接oracle数据库 并 执行 SQL 语句?
  • 写sql进数据库(DB2)怎样实现自动插入(表的主键为String)
  • SQL Server 7.0或2000 的jdbc驱动程序中提供了连接池的实现吗?
  • sql函数实现递归查询示例
  • 在ADF中跟踪SQL执行时间实现代码
  • sql server中通过查询分析器实现数据库的备份与恢复方法分享
  • SQL Server本地时间和UTC时间的相互转换实现代码
  • java实现简单的给sql语句赋值的示例
  • T-SQL 实现一个简单的 Split 函数
  • 在SQL中获取一个长字符串中某个字符串出现次数的实现方法
  • 查询SQL Server中所有数据库的数据文件位置的sql脚本
  • 在SQL Server中使用SQL语句查询一个存储过程被其它所有的存储过程引用的存储过程名
  • sql 查询所有数据库、表名、表字段的代码
  • MySQL中查询所有数据库占用磁盘空间大小和单个库中所有表的大小的sql语句
  • sql 修改表的所有者
  • sql 语句 取数据库服务器上所有数据库的名字
  • 获取sql server表中的所有列字段名称的方法
  • sql语句获取数据库服务器上所有数据库的名字
  • oracle中如何用PL/SQL打开一个指定的库,并在屏幕上列出库中的所有表?
  • SQL 统计一个数据库中所有表记录的数量
  • 查看数据库中所有触发器的sql语句
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • SQL语句去掉重复记录,获取重复记录
  • sql语句怎么写:将table中字段name='string1'的记录都改为name='string2'的记录
  • SQL查找某一条记录的方法
  • sql 查询记录数结果集某个区间内记录
  • 当ResultSet执行SQL成功后,我如何取得ResultSet的记录部条数
  • ResultSet rs = stmt.executeQuery(sql),如果该sql的结果是没有符合的记录,那么rs此时是什么东东?是null吗?如果不是,如何判断是空resultset?
  • sql面试题(查看数据中指定几行记录)
  • 从每个分类选择10条记录的sql语句
  • sql面试题(查看自动编号数据中指定几行记录)
  • 如何得到返回记录集的总条数???sql问题,求助!!!
  • jsp+SQL删除记录出错,请指教!
  • 哪位能提供一个支持滚动记录集的MS SQL Server2000的JDBC驱动程序???
  • 怎样用SQL语句得到查询结果的记录数?100fen
  • SQL 重复记录问题的处理方法小结
  • SQL语句查询数据库中重复记录的个数
  • sql server获得新记录标识列值的二种方法
  • SQL一条语句统计记录总数及各状态数
  • SQL语句练习实例之七 剔除不需要的记录行
  • 在查询结果中添加一列表示记录的行数的sql语句
  • sql server记录修改追踪和恢复的解决方法
  • java命名空间java.sql接口statement的类成员方法: executeupdate定义及介绍
  • 请问,这是什么错误!java.sql.SQLException: [Microsoft][ODBC SQL Server Driver][Named Pipes]??????? SQL Server?虽然分少,但一定给,只要您是前5名回复者中最好的以为!
  • java命名空间java.sql接口connection的类成员方法: nativesql定义及介绍
  • SQL查询分析工具 SQL Workbench/J
  • java命名空间java.sql接口preparedstatement的类成员方法: executeupdate定义及介绍
  • oracle导出sql语句的结果集和保存执行的sql语句(深入分析)
  • java命名空间java.sql接口rowid的类成员方法: getbytes定义及介绍
  • SQL Server统计SQL语句执行时间的脚本
  • java命名空间java.sql接口ref的类成员方法: getbasetypename定义及介绍
  • SQL客户端软件 PKLite SQL Client
  • java命名空间java.sql接口databasemetadata的类成员方法: getsqlkeywords定义及介绍


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3