oracle事务隔离级别serializable测试
时间:2010-08-31 来源:osdba
create table t(id number primary key,name varchar2(20));
有数据
1 'zhang'
2 'wang'
3 'chen'
开两个sqlplus: 第一个: update table t set id=4 where id=1;
每二个: update table t set name='liang' where id=1;
然后在第一个中: commit;
然后在第二个中: commit;
这时第二个,更新的行数为0,原因是id=1的记录被前一个事务更新为4了。
SQL> set transaction isolation level serializable;
事务处理集。
SQL> update t set id=4 where id=1; update t set id=4 where id=1 * 第 1 行出现错误: ORA-08177: 无法连续访问此事务处理
开两个sqlplus: 第一个: update table t set id=4 where id=1;
每二个: update table t set name='liang' where id=1;
然后在第一个中: commit;
然后在第二个中: commit;
这时第二个,更新的行数为0,原因是id=1的记录被前一个事务更新为4了。
SQL> set transaction isolation level serializable;
事务处理集。
SQL> update t set id=4 where id=1; update t set id=4 where id=1 * 第 1 行出现错误: ORA-08177: 无法连续访问此事务处理
相关阅读 更多 +