使用UltraEdit快速分析Oracle表记录条数

有时候需要查看Oracle数据库当中一批表的记录数,比如遇到数据转换、数据核对的场景。

[b]方法一[/b]:先做表分析,然后查询Oracle系统表(不精确)

--生成所有表分析的语句
select 'analyze table '||tname||' compute statistics;' from tab;
--执行上面的语句做全库表分析(数据量大就得等)
--查询系统表看表大小 select * from user_tables where num_Rows>0;


[b]方法二[/b]:直接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执行结果([color=red]光标移动到文件最开始[/color]),选择运行宏,刚才的sql查询结果变成这样了:


STREETNEW 326
STREETMAP 337
STREETMANAGE 141
SIPLUGINTAB 1
SIPLUGINCOL 12
REMOTE_ORG_USER 1548


把这个结果copy到Ecxel当中,非常完美了。
[img]http://dl2.iteye.com/upload/attachment/0089/0810/bb842ae6-8bd2-3275-b9cc-5570283e16dc.png[/img]

附件是可以导入UE的宏
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值