求数据库中所有带数据的表

//列出所有用户表

SELECT [name]     
  FROM [dbo].[sysobjects]
WHERE [type]='u'
ORDER by [name]

//列出有记录的表

一、

select   name,rowcnt  
from   sysindexes  
where  ( OBJECTPROPERTY(object_id(name),   N'IsUserTable')   =   1 )  and (rowcnt>0)
order by name

 二、

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

insert into #temp
select o.name,i.rows
from sysobjects o,sysindexes i
where o.id=i.id and o.Xtype='U' and i.indid<2

select count(count) 总表数,sum(count) 总记录数 from #temp
select * from #temp where count>0
order by name
set nocount off

三、

SELECT   a.name, b.rows
FROM      sys.sysobjects AS a INNER JOIN    sys.sysindexes AS b ON a.id = b.id
WHERE   (a.xtype = 'U') AND (b.indid < 2)
ORDER BY b.rows DESC

//列用用户表中的字段名

SELECT [name]
      ,[id]
      ,[xtype]
      ,[length]
      ,[colid]
  FROM [JiaDeXing].[dbo].[syscolumns]
where [id] in(SELECT [id]     
  FROM [dbo].[sysobjects]
WHERE [type]='u')

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值