欢迎来到天天文库
浏览记录
ID:30863782
大小:1.13 MB
页数:27页
时间:2019-01-03
《实验17事务与并发控制》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、实验十七事务与并发控制姓名专业同组人学号班级2009-12-31实验口期【实验目的与要求】1.掌握数据库事务的概念2.熟悉数据库的四个特性3.熟练掌握数据库事务的实现方法【实验内容与步骤】17.0SQLServer数据库事务基础知识1.事务的概念(Transaction)所谓事务是用户定义的一个数据库操作序列,这些操作要么都做,要么都不做,是一个不可分割的工作单位。关系数据库屮,事务可以是一条SQL语句、一组SQL语句。开始结朿冋滚在SQL语言中,定义事务的语句有三条:BeginTransactionCommitRo
2、llback2・事务开始:BEGINTRANSACTION标记一个显式本地事务的起始点oBEGINTRANSACTION将@@TRANCOUNT力口1。语法结构BEGINTRANfSACTION1[transaction_name
3、@tran_name_variable[WITHMARK['description1]]]参数说明:transaction_name:是给事务分配的名称。transaction_name必须遵循标识符规则,但是不允许标识符多于32个字符。仅在嵌套的BEGIN...COMMIT或BEGIN.
4、..ROLLBACK语句的最外语句对上使用事务名。@tran_name_variable:是用户定义的、含有有效事务名称的变量的名称。必须用char、varchar>nchar或nvarchar数据类型声明该变量。WITHMARKI'description*]:指定在口志中标记事务。Description是描述该标记的字符如果使用了WITHMARK,则必须指定事务名。WITHMARK允许将事务Fl志还原到命名标记。4・事务提交:COMMITTRANSACTION标志一个成功的隐性事务或用户定义事务的结束。如果@@TR
5、ANCOUNT为1,COMMITTRANSACTION使得白从事务开始以来所执行的所有数据修改成为数据库的永久部分,释放连接占用的资源,并将@@TRANCOUNT减少到0。如杲@@TRANCOUNT大于1,贝I」COMMITTRANSACTION使@@TRANCOUNT按1递减。语法结构:COMMIT[TRANfSACTION]transaction_name
6、@tran_name_variable]]参数说明:transaction_name:Microsoft®SQLServer™忽略该参数。transacti
7、on_name指定由前面的BEGINTRANSACTION指派的事务名称。transaction_name必须遵循标识符的规则,但只使用事务名称的前32个字符。通过向程序员指明COMMITTRANSACTION与哪些嵌套的BEGINTRANSACTION相关联,transaction_name可作为帮助阅读的一种方法。@tran_name_variable:是用户定义的、含有有效事务名称的变量的名称。必须用char、varchar^nchar或nvarchar数据类型声明该变量。5・事务回滚:ROLLBACKTRAN
8、SACTION将显式事务或隐性事务冋滚到事务的起点或事务内的某个保存点。语法结构:ROLLBACK[TRAN[SACTION][transaction_name
9、@tran_name_variable
10、savepoint_name
11、@savepoint_variable]]参数说明:transaction_name:是给BEGINTRANSACTION上的事务指派的名称otransaction_name必须符合标识符规则,但只使用事务名称的前32个字符。嵌套事务ff'J',transaction_name必须是来自最
12、远的BEGINTRANSACTION语句的名称。@lran_name_variable:是用户定义的、含有有效事务名称的变量的名称。必须用char、varchar^nchar或nvarchar数据类型声明该变量。savepoint_name:是来自SAVETRANSACTION语句的savepoint_name。savepoint_name必须符合标识符规则。当条件回滚只影响事务的一部分时使用savepoint_namec@savepoint_variable:是用户定义的、含有有效保存点名称的变量的名称。必须用ch
13、ar>varchar^nchar或nvarchar数据类型声明该变量。17.1SQLServer数据库事务基础知识1.事务的创建(1)在查询分析器中执行以下语句,创建一个名为t_lnsUpdate简单的事务,并使它正常提交。Begintransactiont_InsUpdate—t_InsUpdate为事务名UseCPXSInsertintoC
此文档下载收益归作者所有