1 / 36
文档名称:

数据库原理与应用第七章(另有章节可供下载) PPT课件.ppt

格式:ppt   页数:36
下载后只包含 1 个 PPT 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

数据库原理与应用第七章(另有章节可供下载) PPT课件.ppt

上传人:mkt365 2014/5/25 文件大小:0 KB

下载得到文件列表

数据库原理与应用第七章(另有章节可供下载) PPT课件.ppt

文档介绍

文档介绍:第七章并发控制
并发控制
干扰问题
解决干扰——封锁
封锁不当——死锁
封锁与隔离级别
干扰问题
丢失更新问题
未提交依赖问题
不一致分析问题
幻象读问题
丢失更新问题
例:
旅客A来到A售票处,要买一张15日北京到上海的13次直达快速列车的软卧车票,售票员A(下称用户A)在终端A查看剩余票信息;
几乎在同时,旅客B来到B售票处,也要买一张15日北京到上海的13次直达快速列车的软卧车票,售票员B(下称用户B)从终端B查到了同样的剩余票信息;
旅客A买了一张15日13次7车厢5号下铺的软卧票,用户A更新剩余票信息并将它存入数据库;
这时用户B不知道用户A已经将15日13次7车厢5号下铺的软卧票卖出,使旅客B也买了一张15日13次7车厢5号下铺的软卧票,用户B更新剩余票信息并将它存入数据库(重复了用户A已经做过的更新)。
总的效果:15日13次7车厢5号下铺的软卧票卖了两次。其原因是:允许了用户B在过时的信息基础上去更新数据库,而没有迫使他去看最新的信息。
丢失更新问题
用SQL术语描述丢失更新问题
未提交依赖问题
未提交依赖问题也称为读“脏”(Dirty Read)数据问题,查询一个已经被其他事务更新、但尚未提交的元组,将会引起未提交依赖问题。
不一致分析问题
不一致分析问题也称为不可重复读问题,很多应用可能需要校验功能,这时往往需要连续两次或多次读数据进行校验和分析,结果由于其他事务的干扰,使得前后结果不一致,从而产生校验错误(即不一致的分析)。
幻象读问题
幻象读问题与不一致分析问题有关,当事务A读数据时,事务B在对同一个关系进行插入或删除操作,这时事务A再读同一条件的元组时,会发现神秘地多出了一些元组或丢失了一些元组,把这种现象称作幻象读。
封锁
封锁的基本技术
封锁机制
SQL Server中与封锁有关的命令
封锁粒度
意向锁
封锁的基本技术
当需要查询或更新数据时,先对数据进行封锁,以避免来自其他事务的干扰。针对不同的干扰问题可以有不同的封锁机制。
以丢失更新问题为例,实施封锁的基本思想是:当一个用户对一个表或记录进行更新时,封锁该表或记录,使其他用户不能在同一时刻更新相同的表或记录,迫使其他用户在更新后的基础上(而不是在更新前的基础上)再实施另外的更新操作。