《数据库事务锁》PPT课件

《数据库事务锁》PPT课件

ID:45432997

大小:391.84 KB

页数:19页

时间:2019-11-13

《数据库事务锁》PPT课件_第1页
《数据库事务锁》PPT课件_第2页
《数据库事务锁》PPT课件_第3页
《数据库事务锁》PPT课件_第4页
《数据库事务锁》PPT课件_第5页
资源描述:

《《数据库事务锁》PPT课件》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第8章 事务、锁及索引主要内容事务的概念和特性事务的种类锁的概念和类别事务的隔离级别索引及全文索引事务事务的概念1、事务是一种机制,是一个操作序列;2、事务是一个不可分割的工作逻辑单元;3、在数据库系统上执行并发操作时,事务是作为最小的控制单元来使用的。事务的基本特性原子性(Atomicity)、一致性(Consistency)、隔离性(Isolation)、持久性(Durability)。事务的种类显式事物隐性事务自动提交事务显式事务使用关键字BEGINTRANSACTION和ROLLBACKTRANSACTION或COMMITTRANSAC

2、TION来显示地定义事物的开始和结束。删除后勤部DECLARE@transaction_namevarchar(32)SELECT@transaction_name='my_transaction_delete'BEGINTRANSACTION@transaction_nameGODELETEFROMdepartmentWHEREdept_id=’1012’GODELETEFROMemployeeWHEREdept_id=’1012’GOCOMMITTRANSACTIONmy_transaction_deleteGO显示的开始事务显示的提交事务

3、隐性事务通过T-SQL语句:SETIMPLICIT_TRANSACTIONSON,将隐性事务模式设置为打开。SQLServer2000将在提交或回滚当前事务后自动启动新事务。无需描述事务的开始,只需提交或回滚每个事务当SQLServer首次执行下列任何语句时,都会自动启动一个事务。ALTERTABLEINSERTCREATEOPENDELETEREVOKEDROPSELECTFETCHTRUNCATETABLEGRANTUPDATE自动提交事务所有T-SQL语句在完成时,都会提交或回滚。如果一条语句成功完成,则将其提交,如果遇到任何错误,则将其

4、回滚。只要没有用显式或隐性替代自动提交模式,SQLServer连接就以自动提交模式为默认模式进行操作。锁锁的概念锁(Lock)是在多用户环境下对资源访问的一种限制。可以对以下的对象进行锁定:数据行(Row):数据页中的单行数据;索引行(Key):索引页中的单行数据,即索引的键值;页(Page):页是SQLServer存取数据的基本单位,其大小为8KB;盘区(Extent):一个盘区由8个连续的页组成;表(Table);数据库(Database)。锁有两种分类方法。从数据库系统的角度来看独占锁(ExclusiveLock)不允许其他任何操作执行数

5、据更新命令如insertupdatedelete时sqlserver自动使用独占锁一直到事务结束才释放共享锁(SharedLock)其它用户可以读取但不能修改它select执行时候采用该方式更新锁(UpdateLock)当sqlserver准备更新数据时候首先进行更新锁,这样其它用户可以读取但不能修改更新数据时该成独占锁从程序员的角度看乐观锁(OptimisticLock)悲观锁(PessimisticLock)事务隔离级别提交读(READCOMMITTED)未提交读(READUNCOMMITTED)可重复读(REPEATABLEREAD)可串

6、行读(SERIALIZABLE)索引特点索引可以加快数据库的检索速度索引降低了数据库插入、修改、删除等维护任务的速度索引有两种类型,即聚簇索引和非聚簇索引聚簇索引与基表的物理顺序相同,非聚簇索引与基表的物理顺序不相同索引既可以直接创建,也可以间接创建可以在优化隐藏中,使用索引使用查询处理器执行SQL语句,在一个表上,一次只能使用一个索引使用索引调整向导,在一个表上,一次可以使用多个索引使用索引调整向导,需要提供工作量作为调整的对象为什么要创建索引?通过创建唯一性索引,可以保证数据库表中每一行数据的唯一性。可以大大加快数据的检索速度,这也是创建索

7、引的最主要的原因。可以加速表和表之间的连接,特别是在实现数据的参考完整性方面特别有意义。在使用分组和排序子句进行数据检索时,同样可以显著减少查询中分组和排序的时间。通过使用索引,可以在查询的过程中,使用优化隐藏器,提高系统的性能。索引的缺点创建索引和维护索引要耗费时间,这种时间随着数据量的增加而增加。索引需要占物理空间,除了数据表占数据空间之外,每一个索引还要占一定的物理空间,如果要建立聚簇索引,那么需要的空间就会更大。当对表中的数据进行增加、删除和修改的时候,索引也要动态的维护,这样就降低了数据的维护速度。在哪些列上创建索引在经常需要搜索的列

8、上,可以加快搜索的速度;在作为主键的列上,强制该列的唯一性和组织表中数据的排列结构;在经常用在连接的列上,这些列主要是一些外键,可以加快连接的速度;在

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。