如何在Oracle10中查看自上次提交以来更改的所有记录? |
您所在的位置:网站首页 › 怎么看表格修改记录 › 如何在Oracle10中查看自上次提交以来更改的所有记录? |
在Oracle10g(我认为从9i开始)中,您可以使用闪回查询来实现这一点。 通常,当您需要查看前一段时间的数据时,会使用闪回查询,但在您的情况下,诀窍是闪回查询只能看到提交的数据。 所以,这里有一个简单的例子: SQL> create table t1 as select level lev from dual connect by level < 100; Table created. SQL> select count(*) from t1; COUNT(*) ---------- 99 SQL> select count(*) from t1 as of timestamp systimestamp; COUNT(*) ---------- 99 SQL> update t1 set lev = -lev; 99 rows updated. SQL> select max(lev) from t1 as of timestamp systimestamp; MAX(LEV) ---------- 99 SQL> select max(lev) from t1; MAX(LEV) ---------- -1 SQL> commit; Commit complete. SQL> select max(lev) from t1 as of timestamp systimestamp; MAX(LEV) ---------- -1 SQL>更新:更好的是,您可以使用Flashback Version Query或闪回事务查询进行一些调整,以过滤除当前会话之外的所有会话所做的更改。 |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |