方法一:先做表分析,然后查询Oracle系统表(不精确)
--生成所有表分析的语句 select 'analyze table '||tname||' compute statistics;' from tab; --执行上面的语句做全库表分析(数据量大就得等) --查询系统表看表大小 select * from user_tables where num_Rows>0;
方法二:直接count,然后使用文本工具分析
--生成count语句 select 'select count(1) from '||tname||';' from tab
执行结果
SQL> select count(1) from STREETNEW; COUNT(1) ---------- 326 SQL> select count(1) from STREETMAP; COUNT(1) ---------- 337 SQL> select count(1) from STREETMANAGE; COUNT(1) ---------- 141 SQL> select count(1) from SIPLUGINTAB; COUNT(1) ---------- 1 SQL> select count(1) from SIPLUGINCOL; COUNT(1) ---------- 12 SQL> select count(1) from REMOTE_ORG_USER; COUNT(1) ---------- 1548
如果表多看起来就费劲了,怎么办?
使用UltraEdit增加一个宏, 选择菜单 宏->编辑宏->新建宏(录入一个名称)
InsertMode ColumnModeOff HexOff ColumnModeOn ColumnModeOff UltraEditReOn Find RegExp ";" Replace All "" UltraEditReOn Find RegExp "SQL> select count(1) from " Replace All "" UltraEditReOn Find RegExp " COUNT(1) ----------" Replace All "" UltraEditReOn Find RegExp " COUNT(1) ----------" Replace All "" UltraEditReOn Find RegExp " " Replace All "" UltraEditReOn Find RegExp " " Replace All "^t"
保存以后,新建文件,贴入上面的sql执行结果( 光标移动到文件最开始),选择运行宏,刚才的sql查询结果变成这样了:
STREETNEW 326 STREETMAP 337 STREETMANAGE 141 SIPLUGINTAB 1 SIPLUGINCOL 12 REMOTE_ORG_USER 1548
把这个结果copy到Ecxel当中,非常完美了。
附件是可以导入UE的宏