怎么在oracle数据库中想统计一个用户下所有表的记录的总条数?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了怎么在oracle数据库中想统计一个用户下所有表的记录的总条数?相关的知识,希望对你有一定的参考价值。
如果是oracle9i版本,可以考虑如下两步实现:(10g直接执行第二步就可以了)
统计一个用户下所有表的行数:
1.exec
dbms_stats.gather_schema_stats(owner=>'用户名');
2.select
sum(num_rows)
from
user_tables;
统计全库所有表的行数:
1.exec
dbms_stats.gather_database_stats(estimate_percent=>'30');
2.select
sum(num_rows)
from
dba_tables;
生产环境中需谨慎考虑收集新的统计信息后对应用产生的影响。 参考技术A analyze
table
table_name
COMPUTE
STATISTICS
对表分析后在使用
select
count(^)
from
table_name
如果你的table_name
有主键
ID
select
count(ID)
from
table_name
在统计的时候会用到主键索引
ORACLE把一个用户下的所有表权限赋予另一个用户?
1、首先,普通用户是没有给别的用户赋权限的权限,只有超级用户admin或者管理员帐号才可以给别的用户赋予权限。2、赋予权限SQL语句(给普通用户user赋所有权限):
grant all to user;
如果只要赋予部分权限,则:
grant create session, select any table, dba to user; 参考技术A grant all on product to user_name; 参考技术B select 'grant select on '||'"'||table_name||'"'||' to zhangsan;' from user_tables; 参考技术C GRANT SELECT ANY TABLE TO COMM;本回答被提问者采纳
以上是关于怎么在oracle数据库中想统计一个用户下所有表的记录的总条数?的主要内容,如果未能解决你的问题,请参考以下文章
怎么在oracle数据库中想统计一个用户下所有表的记录的总条数?
oracle数据库 ,想统计一个用户下,所有表的记录的总条数,用啥语句可以实现?