【備份恢復】閃回技術之閃回版本查詢
閃回版本查詢
語法:
select column_name[,column_name,...]
from table_name
versions between[SCN|TIMESTAMP] [expr|MINVALUE] and[epxr|MAXVALUE];
1) 查詢 scott使用者 emp表欄位 empno 為 7369 對應的sal 值為 800
SYS@ORA11GR2>conn scott/tiger
Connected.
SCOTT@ORA11GR2>
SCOTT@ORA11GR2>select ename,job,sal from emp where empno=7369;
ENAME JOB SAL
---------- --------- ----------
SMITH CLERK 800
2) 對 sal 欄位進行更新,更新三次,每次增加 200
--第一次:
SCOTT@ORA11GR2>update emp set sal=sal+200 where empno=7369;
1 row updated.
SCOTT@ORA11GR2>commit;
Commit complete.
--第二次:
SCOTT@ORA11GR2>update emp set sal=sal+200 where empno=7369;
1 row updated.
SCOTT@ORA11GR2>commit;
Commit complete.
--第三次:
SCOTT@ORA11GR2>update emp set sal=sal+200 where empno=7369;
1 row updated.
SCOTT@ORA11GR2>commit;
Commit complete.
3) 查詢更新三次後的值
SCOTT@ORA11GR2>select ename,job,sal from emp where empno=7369;
ENAME JOB SAL
---------- --------- ----------
SMITH CLERK 1400
4) 閃回版本查詢,我們可以清晰的看到更新的每個版本:
SCOTT@ORA11GR2>select to_char(versions_starttime,'yyyy-mm-dd hh24:mi:ss') as starttime,versions_xid,ename,job,sal from emp versions between timestamp sysdate-10/1440 and sysdate where empno=7369;
STARTTIME VERSIONS_XID ENAME JOB SAL
------------------- ---------------- ---------- --------- ----------
2016-09-29 19:25:14 11000300E1000000 SMITH CLERK 1400
2016-09-29 19:25:00 0C002000DC000000 SMITH CLERK 1200
2016-09-29 19:24:35 14000400E1000000 SMITH CLERK 1000
SMITH CLERK 800
5) 附:涉及到的偽列
偽列 |
含義 |
VERSIONS_STARTSCN |
該記錄操作時的 scn 或時間,如果為空,表示該行記錄是在查詢範圍外創建的。 |
VERSIONS_ENDSCN |
該記錄失效時的 scn 或時間,如果為空,說明記錄當前時間在當前表記憶體在,或者已經被刪除了,可以配合著 VERSIONS_OPERATION 列來看,如果 VERSIONS_OPERATION 列值為 D,說明該列已被刪除,如果該列為空,則說明記錄在這段時間無操作。 |
VERSIONS_OPERATION |
對該行執行的操作: I 表示 insert, D 表示 delete, U 表示 update。 |
VERSIONS_XID |
該操作的事務 ID |
6) 閃回版本注意事項
ü VERSIONS 子句不能用於:
- 外部表
- 臨時表
- 固定表
- 檢視
ü VERSIONS 不能跨 DDL 命令。
ü 段收縮操作被過濾掉。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/31397003/viewspace-2126601/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 【備份恢復】 閃回技術之閃回刪除
- 【備份恢復】 閃回技術之閃回事務處理查詢
- 【備份恢復】 閃回技術之閃迴歸檔
- 閃回查詢之閃回版本查詢
- 閃回版本查詢技術:
- 閃回技術一:閃回查詢
- Oracle 11G 閃回技術 閃回版本查詢和閃回事務查詢Oracle
- Oracle 11G 閃回技術 使用閃回版本查詢Oracle
- 閃回查詢之閃回表查詢
- [閃回特性之閃回版本查詢]Flashback Version Query
- 【閃回特性之閃回查詢】使用閃回查詢(select as of)
- 閃回查詢恢復過程
- 閃回表、閃回查詢
- (f)--閃回恢復區---實踐2---閃回表(閃回DML部分資料會用到閃回查詢)
- 閃回版本查詢操作
- 閃回版本查詢與閃回事務查詢
- 使用閃回查詢備份資料
- Oracle 11G 閃回技術 使用Oracle閃回查詢Oracle
- 閃回技術查詢資料
- 閃回(關於閃回查詢)
- 閃回刪除、閃回查詢
- 【備份恢復】閃回資料庫(一)閃回資料庫的管理資料庫
- 閃回查詢恢復誤刪資料
- Oracle閃回查詢,閃回版本查詢與閃回事務查詢的使用區別總結Oracle
- 【備份恢復】閃回資料庫(五)RMAN 命令列閃回資料庫資料庫命令列
- 【備份恢復】閃回資料庫(二) 基於 SCN 閃回資料庫資料庫
- 基本閃回查詢和閃回表
- Oracle閃回技術之閃回資料庫Oracle資料庫
- oralce恢復誤刪除的表中的資料(閃回、閃回查詢)
- 閃回技術二:閃回表
- 閃回查詢
- DM7閃回與閃回查詢
- oracle閃回版本查詢學習Oracle
- 閃回版本查詢(Flashback Version Query)
- 【備份恢復】閃回資料庫(三)基於時間戳閃回資料庫資料庫時間戳
- Oracle閃回查詢恢復delete刪除資料Oracledelete
- (f)--閃回恢復區---實踐3---閃回查詢(基於AUM (auto undo managemet))
- oracle閃回查詢Oracle