10g里的ora_rowscn

本文介绍了Oracle数据库中ora_rowscn的功能,通过实例演示了ora_rowscn在不同操作下的变化规律,揭示了其用于记录行变更的重要作用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

转载

10g里面有了一项新功能,ora_rowscn

 
SQL >create table tt(id number);
Table created.
 
SQL >select ora_rowscn from tt;
no rows selected
 
SQL >insert into tt values(1);
1 row created.
 
 
insert 后查询ora_rowscn

SQL> select ora_rowscn from tt;

ORA_ROWSCN
----------
   2261349

SQL> commit;

提交完成。

SQL> select ora_rowscn from tt;

ORA_ROWSCN
----------
   2261361

 
SQL >insert into test values(2);
1 row created.
 
再插入一条记录,查看ora_rowscn,发现两条记录的ora_rowscn相同
 


SQL> select ora_rowscn from tt;

ORA_ROWSCN
----------
   2261361
   2261361

SQL> commit;

提交完成。

事务完成后ora_rowscn发生变化
SQL> select ora_rowscn from tt;

ORA_ROWSCN
----------
   2261428
   2261428

 下面看rowdependencies后的rowscn


SQL> create table ttt (id number) rowdependencies
  2  ;

表已创建。

SQL> insert into ttt values (1);

已创建 1 行。



SQL> select ora_rowscn from ttt;

ORA_ROWSCN
----------


SQL> commit;

提交完成。

事务递交后,可以查询到ora_rowscn
SQL> select ora_rowscn from ttt;

ORA_ROWSCN
----------
   2261501

插入第2条数据,
 


SQL> insert into ttt values(2);

已创建 1 行。

SQL> select ora_rowscn from ttt;

ORA_ROWSCN
----------
   2261501


SQL> commit;

提交完成。

SQL> select ora_rowscn from ttt;

ORA_ROWSCN
----------
   2261501
   2261601

2条记录的ora_rowscn并不一样,说明scn是基于行的变化生成的。

 
SQL> select scn_to_timestamp(ora_rowscn) from ttt;

SCN_TO_TIMESTAMP(ORA_ROWSCN)
------------------------------------------------------------
16-11月-06 03.53.48.000000000 下午
16-11月-06 03.56.27.000000000 下午

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/165278/viewspace-440726/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/165278/viewspace-440726/

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值