如何在SQL查询分析器里运行查找其中一个数据库内的所有表的行数

请指教,因为这个数据库中上百个表需要统计出每个表的行数。救命啊请给出具体的实现方式或代码数据库名为seadb怎么列出seadb下所有120个表每个的行数我用select*... 请指教,因为这个数据库中上百个表需要统计出每个表的行数。救命啊
请给出具体的实现方式或代码 数据库名为seadb 怎么列出seadb下所有120个表每个的行数
我用select * form seadb.dbo.sysobjects where utype='U'得到了所有用户表,可是怎么取到行数呢

2楼的回答还是不太明白,直到TABLE N不是要到TABLE 120,每天要做的话,死人的

2005听说是有这个功能,现在的是SQL2000

xyphoenix 你的程序看到是空值
展开
 我来答
hotyxm
2007-09-12 · TA获得超过1028个赞
知道大有可为答主
回答量:1698
采纳率:50%
帮助的人:1196万
展开全部
我的答案你还不能得到结果吗?我在SQL SERVER 2000下面测试通过,取到的结果都是正确的

刚刚想了一下,如果你要查行数的话,用这个SQL
drop table #T

CREATE TABLE #T ([name] nvarchar(255),rows bigint)
DECLARE @Name nvarchar(255),@Sql nvarchar(4000)
DECLARE TName CURSOR FOR
SELECT [name] FROM sysobjects WHERE xtype = 'U'
OPEN TName
FETCH NEXT FROM TName
INTO @Name
WHILE @@FETCH_STATUS = 0
BEGIN
SET @Sql='INSERT INTO #T ([name],rows) SELECT '''+@name+''' AS name, COUNT(1) AS row FROM '+@name
EXEC(@Sql)
FETCH NEXT FROM TName INTO @name
END
CLOSE TName
DEALLOCATE TName
SELECT * FROM #T
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
光点科技
2023-08-15 广告
通常情况下,我们会按照结构模型把系统产生的数据分为三种类型:结构化数据、半结构化数据和非结构化数据。结构化数据,即行数据,是存储在数据库里,可以用二维表结构来逻辑表达实现的数据。最常见的就是数字数据和文本数据,它们可以某种标准格式存在于文件... 点击进入详情页
本回答由光点科技提供
dna53988
2007-09-11 · TA获得超过1.8万个赞
知道大有可为答主
回答量:8082
采纳率:22%
帮助的人:7941万
展开全部
第一个GO事务是检查当前数据库中是否已经存在名为table_name的表,如果有用就删除该表。
第二个GO事务是创建一个新的名为table_name的表。
IF 条件
BEGIN
语句(多条,单条时不用BEGIN...END)
END
ELSE
BEGIN
语句(多条)
END

EXISTS(语句)是SQL函数,判断是否存在查询结果。
sysobjects 是系统表,记录着当前数据库中所有表。
TYPE ='U'时是用户表,非系统表。
具体用法请见SQL的相关书籍。

实例如下:

if exists (select 1
from sysindexes
where id = object_id('admin')
and name = 'admin_PK'
and indid > 0
and indid < 255)
drop index admin.admin_PK
go
/*==============================================================*/
/* Table: admin 管理员表 */
/*==============================================================*/
create table [admin] (
adminID bigint identity(1,1) not null,
adminUser nvarchar(20) not null,
adminPass nvarchar(20) default '123456' not null,
adminRole smallint default 5 null,
-- constraint CKC_ADMINROLE_ADMIN check (adminRole is null or (adminRole in (s))),
adminRegisteredDate datetime default getdate() not null,
adminLastLoginDate datetime default getdate() not null,
adminLoginCount bigint default 0 null
)
go

这是很基本的数据库SQL语法,建议使用PowerDesigner建模,会简单明了很多。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
伤悲后人哀3495
2007-09-11 · 超过28用户采纳过TA的回答
知道答主
回答量:198
采纳率:0%
帮助的人:0
展开全部
你写SELECT COUNT(*)FROM TABLE1,然后复制,粘贴知道TABLE N,
然后大哥对象管理器,把对应的表代替TABLE N ,不就统计出来了

楼上讲述的应该是,新建表吧
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
旋天渣观9129
2007-09-11 · TA获得超过1487个赞
知道大有可为答主
回答量:1443
采纳率:0%
帮助的人:1628万
展开全部
create table #temp ([name] nvarchar(255),[count] decimal)

declare mycur cursor local for select [name] from seadb.dbo.sysobjects where xtype='U'
declare @name varchar(100)

OPEN mycur

FETCH NEXT from mycur into @name

WHILE @@FETCH_STATUS = 0

BEGIN
exec('insert into #temp([name],[count]) select '''+@name+''',count(*) from ' + @name)
FETCH NEXT from mycur into @name
END

CLOSE mycur
select * from #temp
select '合计',sum([count]) from #temp
drop table #temp
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
温顺还悉心丶赤子1
2007-09-11 · TA获得超过219个赞
知道小有建树答主
回答量:474
采纳率:0%
帮助的人:0
展开全部
查寻分析器
我用的2005

在你要看的数据库,右键,报告->标准报告->里面有个表的查看.
就可以看见了.
很简单.
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(4)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式