INFORMIX数据库隔离级别

INFORMIX数据库隔离级别

 

多个事务对相同记录的并行访问,数据库提供隔离级别来控制数据的并发访问。隔离级别指定在执行并发 SQL 事务期间会出现的现象。可能会出现以下现象:

l  脏读SQL 事务 T1 修改一行。然后 SQL 事务 T2 T1 执行 COMMIT 之前读取该行。如果 T1 接着执行 ROLLBACK,则 T2 将已经读取一个从未提交的行,因而也可以认为是一个从未存在过的行。

l  不可重复读取SQL 事务 T1 读取一行。然后 SQL 事务 T2 修改或删除该行并执行 COMMIT。如果 T1 接着尝试重新读取该行,T1 可能会收到修改后的值或发现该行已被删除。

l  幻像行SQL 事务 T1 读取满足某些搜索条件的多行的集合 N。然后 SQL 事务 T2 执行生成满足 SQL 事务 T1 所使用的搜索条件的一个或多个新行的 SQL 语句。如果 T1 接着使用相同的搜索条件重复原先的读取,则 T1 收到一个不同的多行的集合。
脏读,

下面通过示例说明dirty readDR--脏读 commited read (CR)—提交读两种数据库并行访问策略。

 

设置隔离级别方法:

DR

SET TRANSACTION ISOLATION LEVEL READ UNCOMMITTED;

或者

Set isolation to dirty read;

CR:

   SET TRANSACTION ISOLATION LEVEL READ COMMITTED;

   或者

   Set isolation to commited read;

 

测试示例:

Create table test(t1 integer);

三个事务T1T2T3对表test1进行并发访问。

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值