闪回事务查询

闪回事务查询:
检索一个事务的所有撤销数据,不考虑它影响了多少对象。关键的视图如下:
SQL> desc flashback_transaction_query
 名称                                      是否为空? 类型
 ----------------------------------------- -------- ------------------

 XID                                                RAW(8)
 START_SCN                                          NUMBER
 START_TIMESTAMP                                    DATE
 COMMIT_SCN                                         NUMBER
 COMMIT_TIMESTAMP                                   DATE
 LOGON_USER                                         VARCHAR2(30)
 UNDO_CHANGE#                                       NUMBER
 OPERATION                                          VARCHAR2(32)
 TABLE_NAME                                         VARCHAR2(256)
 TABLE_OWNER                                        VARCHAR2(32)
 ROW_ID                                             VARCHAR2(19)
 UNDO_SQL                                           VARCHAR2(4000)
在能够查询它之前必须授权select any transaction.默认情况下,将此权限授予sys和dba角色。
其中:
xid:事务标识符,这是闪回版本查询中显示的versions_xid伪列的连接列
start_scn:事务开始时的系统变更号
start_timestamp:事务开始时的时间戳
commit_scn:提交事务时的系统变更号
commit_timestamp:提交事务时的时间戳
logon_user:执行事务的会话的Oracle用户名
undo_change#:撤销系统变更号,这不大可能与大多数工作相关。
operation:应用到行的DML操作,insert,update或delete
table_name:行所属的表
table_owner:表所属的模式
row_id:受影响的行的唯一标识符
undo_sql:反转操作的结构化语句。例如operation是delete,那么这将是insert
如下:
SQL> update emp set sal=sal*11 where empno=7902;

已更新 1 行。

SQL> commit;

提交完成。
SQL> select ename,sal,versions_xid from emp versions between scn minvalue and
  2  maxvalue where empno=7902;

ENAME         SAL VERSIONS_XID
---------- ------ ----------------
FORD        33000 06001A00DB060000
FORD         3000

SQL> select operation,undo_sql from flashback_transaction_query where xid=
  2  hextoraw('06001A00DB060000');

OPERATION  UNDO_SQL
---------- ----------------------------------------
UNKNOWN
BEGIN

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值