首页 数据库第11章 游标、事务

数据库第11章 游标、事务

举报
开通vip

数据库第11章 游标、事务第11章游标、事务【学习要点】 游标和事务的基本概念及作用 游标的基本操作 事务的特性、分类 事务的启动、提交和回滚事务11.1游标 在数据库中,游标是一个十分重要的概念。游标提供了一种对从表中检索出数据进行操作的灵活手段,就本质而言,游标实际上是一种能从包括多条数据记录的结果集中每次提取一条记录的机制。游标总是与一条SQL选择语句相关联,因为游标由结果集(可以是零条、一条或由相关的选择语句检索出的多条记录)和结果集中指向特定记录的游标位置组成。当决定对结果集进行处理时,必须声明一个指向该结果集的游标。 11.1....

数据库第11章  游标、事务
第11章游标、事务【学习要点】 游标和事务的基本概念及作用 游标的基本操作 事务的特性、分类 事务的启动、提交和回滚事务11.1游标 在数据库中,游标是一个十分重要的概念。游标提供了一种对从表中检索出数据进行操作的灵活手段,就本质而言,游标实际上是一种能从包括多条数据记录的结果集中每次提取一条记录的机制。游标总是与一条SQL选择语句相关联,因为游标由结果集(可以是零条、一条或由相关的选择语句检索出的多条记录)和结果集中指向特定记录的游标位置组成。当决定对结果集进行处理时,必须声明一个指向该结果集的游标。 11.1.1声明游标DECLARE游标名[INSENSITIVE][SCROLL][STATIC|KEYSET|DYNAMIC|FAST_FORWARD]CURSORFOR<SELECT语句>[FORREADONLY|UPDATE[OF列名1,列名2,列名3…]11.1游标 11.1.2打开游标 声明了游标后,在正式操作之前,必须打开它。打开游标的语法格式如下: OPEN游标名称 当执行打开游标的语句时,服务器执行声明游标时使用的SELECT语句,如果使用了INSENSITIVE关键字,则服务器会在tempdb中建立一张临时表,以存放游标将要操作的数据集的副本。11.1游标 11.1.3提取数据 当用OPEN语句打开了游标并在数据库中执行了查询后,并不能立即利用查询结果集中的数据,必须用FETCH语句来提取数据,一条FETCH语句一次可以将一条记录放入指定的变量中。事实上,FETCH语句是游标使用的核心。语法格式如下: FETCH [[NEXT|PRIOR|FIRST|LAST |ABSOLUTE{N|@NVAR} |RELATIVE{N|@NVAR}] FROM ]游标名 [INTO@变量[,…n]]11.1游标 11.1.4关闭游标 在使用完游标的时候,一定要关闭游标,以通知服务器释放游标所占的资源。关闭游标的语法如下: CLOSE游标名称11.1游标 11.1.5释放游标 在使用完游标后,为了回收被游标占用的资源,应该将游标释放。释放游标的语法如下: DEALLOCATE游标名称11.2事务 事务是单个的工作单元,是一个操作序列,它包含了一组数据操作命令,并且所有的命令作为一个整体一起向系统提交或撤消操作请求,即这一组数据库命令要么都执行要么都不执行。如果某一事务成功,则在该事务中进行的所有数据修改均会提交,成为数据库中的永久组成部分。如果事务遇到错误且必须取消或回滚,则所有数据修改均会回到更改前的状态。 11.2.1事务概述 事务是并发控制的基本单位。所谓事务,就是一个操作序列,序列中的操作作为一个不可分割的工作单元,要么都执行,要么都不执行。 事务具有4个特性:原子性(Atomicity)、一致性(Consistency)、隔离性(Isolation)和持续性(Durability)。这4个特性也简称为ACID特性,事务的4个特性使数据能够正确地提交到数据库中。11.2事务 11.2.2自动提交事务 每条单独的语句都是一个事务。所有Transact-SQL语句在完成时,都会提交或回滚。如果一条语句成功完成,则将其提交,如果遇到任何错误,则将其回滚。只要没有用显式或隐性事务模式替代自动提交模式,SQLServer连接就以自动提交模式为默认模式进行操作。11.2事务 11.2.3显式事务 事务的开始与结束可以由用户显式控制。如果用户没有显式地定义事务,则由DBMS按默认规定自动划分事务。在SQL语言中,控制事务的语句有4条。(1)开始事务:BEGINTRANSACTION。(2)提交事务:COMMIT。(3)回滚事务:ROLLBACK。(4)保存事务点:SAVETRANSATION。 事务通常是以BEGINTRANSACTION开始,以COMMIT或ROLLBACK结束。COMMIT表示提交,即提交事务的所有操作。具体地说就是将事务中所有对数据的更新写回到磁盘上的物理数据库中去,事务正常结束。ROLLBACK表示回滚,即在事务运行的过程中发生了某种故障,事务不能继续执行,系统将事务中对数据库的所有已完成的操作全部撤销,回滚到事务开始时的状态。11.2事务 11.2.4隐式事务 通过SETIMPLICIT_TRANSACTIONSON语句,将隐式事务模式设置为打开。当连接以隐式事务模式进行操作时,SQLServer将在提交或回滚当前事务后自动启动新事务。无需描述事务的开始,只需提交或回滚每个事务。隐式事务模式生成连续的事务链。 在发出COMMIT或ROLLBACK语句之前,该事务将一直保持有效。在第一个事务被提交或回滚之后,下次当连接执行这些语句中的任何语句时,SQLServer都将自动启动一个新事务。SQLServer将不断地生成一个隐式事务链,直到使用语句SETIMPLICIT_TRANSACTIONSOFF将隐式事务模式关闭为止。 本章小结 本章学习游标的基本操作有五个步骤:声明游标、打开游标、提取游标、关闭游标和释放游标。使用游标进行数据的修改,该游标必须声明为可更新游标。掌握定位修改游标数据的用法。 事务是一个逻辑工作单元。事务可能包括一条语句,也可能包括多条语句,而这些语句的所有操作,要么都完成,要么都取消。掌握数据库事务的的特性:原子性、一致性、隔离性和持续性。事务的控制语句:BEGINTRANSACTION、COMMITTRANSACTION、ROLLBACKTRANSACTION和SAVETRANSACTION。
本文档为【数据库第11章 游标、事务】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
个人认证用户
孟子73代
暂无简介~
格式:ppt
大小:346KB
软件:PowerPoint
页数:0
分类:工学
上传时间:2019-10-02
浏览量:3