sql >> データベース >  >> RDS >> Oracle

範囲内のタイムスタンプの時点で使用するOracleレコード履歴

    はい、このように:

    SQL> select sal from emp where empno=7369;
    
           SAL
    ----------
          5800
    
    SQL> update emp set sal = sal+100 where empno=7369;
    
    1 row updated.
    
    SQL> commit;
    
    Commit complete.
    
    SQL> update emp set sal = sal-100 where empno=7369;
    
    1 row updated.      
    
    SQL> commit;
    
    Commit complete.
    
    SQL> select empno, sal, versions_starttime,versions_xid
      2  from emp
      3  versions between timestamp sysdate-1 and sysdate
      4  where empno=7369;
    
         EMPNO        SAL VERSIONS_STARTTIME                                                          VERSIONS_XID
    ---------- ---------- --------------------------------------------------------------------------- --
          7369       5900 11-DEC-08 16.05.32                                                          0014001300002A74
          7369       5800 11-DEC-08 16.03.32                                                          000D002200012EB1
          7369       5800
    

    どこまで戻ることができるかは、UNDO_RETENTIONパラメータによって制限され、通常は数日ではなく数時間になることに注意してください。



    1. 私のSQLのintとint(2)データ型の違い

    2. NHibernate IPreUpdateEventListener、IPreInsertEventListenerがDBに保存されない

    3. Rubymysql2エラー

    4. phpmysqlではajaxデータ応答は常に0です