如何在oracle数据库中查询记录总条数

如何在oracle数据库中查询记录总条数,第1张

方法和详细的 *** 作步骤如下:

1、第一步,查询该库中的所有表,测试sql,代码见下图转到下面的步骤。

2、第二步,执行完上面的 *** 作之后,查询有多少个数据表,见下图,转到下面的步骤。

3、第三步,执行完上面的 *** 作之后,在TEST的开头编写一个查询表的脚本,每个表中的记录数,代码见下图,转到下面的步骤。

4、第四步,执行完上面的 *** 作之后,执行sql,在输出窗口中,可以看到每个表的输出,见下图。这样,就解决了这个问题了。

select d.name as 表名,COUNT (*)as 记录 from syscolumns a inner join sysobjects d on a.id = d.id and d.xtype = 'U'

group by d.name

这是sqlserver 实现的,不知道符不符合。不过刚刚验证了一下,不是很对,估计是主键的原因,修改好了再看看

以上语句只能测试出部分,这个存储过程可以实现全部,sqlserver直接执行即可:

create table #temp(Recordcount int ,tableName varchar(30))

declare @tablename varchar(30)

declare @sql varchar(100)

declare @str varchar(30)

declare tablecursor cursor for

select name from sysobjects where xtype='u'

open tablecursor

fetch next from tablecursor into @tablename

while @@fetch_status=0

begin

set @str=@tablename

set @sql='insert into #temp(recordcount,tablename) select count(*),'+''''+@tablename+''''+' from '+@tablename

exec(@sql)

fetch next from tablecursor into @tablename

end

close tablecursor

deallocate tablecursor

select * from #temp drop table #temp

--读取库中的所有表名

select name from sysobjects where xtype='u'

--读取指定表的所有列名

select name from syscolumns where id=(select max(id) from sysobjects where xtype='u' and name='表名')

获取数据库表名和字段

sqlserver中各个系统表的作用

sysaltfiles 主数据库 保存数据库的文件

syscharsets 主数据库 字符集与排序顺序

sysconfigures 主数据库 配置选项

syscurconfigs 主数据库 当前配置选项

sysdatabases 主数据库 服务器中的数据库

syslanguages 主数据库 语言

syslogins 主数据库 登陆帐号信息

sysoledbusers 主数据库 链接服务器登陆信息

sysprocesses 主数据库 进程

sysremotelogins主数据库 远程登录帐号

syscolumns 每个数据库 列

sysconstrains 每个数据库 限制

sysfilegroups 每个数据库 文件组

sysfiles 每个数据库 文件

sysforeignkeys 每个数据库 外部关键字

sysindexs 每个数据库 索引

sysmenbers 每个数据库 角色成员

sysobjects 每个数据库 所有数据库对象

syspermissions 每个数据库 权限

systypes 每个数据库 用户定义数据类型

select 列名=name from syscolumns where id=object_id(N'要查的表名')


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/sjk/9608779.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-30
下一篇2023-04-30

发表评论

登录后才能评论

评论列表(0条)

    保存