- 1、本文档共7页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
实验八 事务与锁
(实验报告)
目的
掌握事务和锁的基本概念。
掌握事务的定义、管理及利用事务进行数据处理的方法。
了解SQL Server 2005的并发控制及锁的管理等相关技术。
实验内容
(1)完成下列操作
定义一个事务,在teaching数据库的student表和score表中新增一名学生的基本信息记录和选课记录,并提交该事务。
定义一个事务,在teaching数据库中,向score表中增加学号为‘0922221326’的学生的选课记录,并回滚该事务。
定义一个事务,将student表中学号为‘0922221326’的学生的性别修改为‘女’,并设置一个保存点,然后将score表中学号为‘0922221326’的学生的期末成绩修改为88,最后回滚到事务的保存点,提交事务。
使用隐式事务完成对score表的操作。在查询编辑器中输入如下程序并执行。
Use teaching
Go
Set implicit_transactions on
Select * from score where studentno=‘0922221326’
--第一个隐式事务开始
Update score
Set final=88
Where studentno=‘0922221326’
Select * from score where studentno=‘0922221326’
Commit tran --提交第一个隐式事务
--第二个隐式事务开始
Update score
Set usually=90
Where studentno=‘0922221326’
Select * from score where studentno=‘0922221326’
Rollback tran –回滚第二个隐式事务
Select * from score where studentno=‘0922221326’
Set implicit_transactions
使用嵌套事务完成对表score表的操作。
在查询编辑器中输入如下程序并执行:
Use teaching
Go
Begin tran outer_trans
Begin tran inner_trans
Select * from score where studentno=‘0922221326’
Update score
Set final = 95
Where studentno=‘0922221326’
Select * from score where studentno=‘0922221326’
Commit tran inner_trans; --提交嵌套事务内层
Update score
Set final = 90
Where studentno=‘0922221326’
Select * from score where studentno=‘0922221326’
Rollback tran outer_trans --回滚事务外层
Select * from score where studentno=‘0922221326’;
SQL Server检测和处理死锁
①打开一个查询编辑器,输入如下程序并执行:
Use teaching
Go
Begin tran trans1
Update score
Set usually=90
Where studentno=‘0922221326’;
注意不要提交事务trans1。
②打开第二个查询编辑器,输入以下程序并执行:
Use teaching
Go
Begin tran trans2
Delete from student
Where studentno=‘0922221326’
Delete from score
Where studentno=‘0922221326’;
由于在查询1中的事务没有提交,因此事务trans2将被阻塞。
③重新打开一个查询编辑器,输入如下程序并执行:
Update student
Set sex=‘男’
Where studentno=‘0922221326’;
其中一个事务被取消,并且显示如下错误提示信息:
消息1205,级别13,状态51,第2行
事务(进程ID54)与另一个进程被死锁在锁资源上,并且已被选作死锁牺牲品。请重新运行该事务。
在此过程中,每一步运行结束,均可通过系统视图 sys.dm_tran_locks查看锁定资源的相关信息。
(2)完成实验报告
实验环境
SQL2005。
实验原理
理解事务与锁。
掌握事务与锁的使用。
实验报告
将实验内容作为实验报告完成。
实验小结
您可能关注的文档
- 想象力测试完整版.doc
- 医护一体化查房共30页文档.ppt
- 大学生业余生活调查报告.doc
- 思想政治理论课实践报告.doc
- 出师表_2完整版.ppt
- 复数知识点完整版.doc
- 广编10级广播电视主持 新闻综合节目实验报告 刘 波.doc
- Java小日历 课程设计报告.doc
- M10砂浆配合比设计报告.doc
- 五年级实验报告安排.doc
- 人教新目标版英语九年级 中考模拟学情评估(三)(含答案).pdf
- 上海市风华中学2024-2025学年高三上学期9月阶段测试英语试题(无答案).pdf
- 统编版2024-2025学年语文六年级上册期末检测卷(有答案).pdf
- 人教新目标版英语九年级第二学期全册学情评估(含答案).pdf
- 内蒙古自治区巴彦淖尔市杭锦后旗第六中学2024-2025学年八年级上学期阶段性测试历史试题(解析版).pdf
- 湖南省娄底市涟源市部分学校2024-2025学年高一上学期9月月考语文试题 Word版无答案.pdf
- 湖南省衡阳市常宁市2023-2024学年七年级上学期期末考试英语试题.pdf
- 湖南省娄底市涟源市部分学校2024-2025学年高一上学期9月月考语文试题 Word版含解析.pdf
- 江苏省泰州市姜堰区城西实验学校2024-2025学年部编版九年级上学期月考历史试卷(原卷版).pdf
- 内蒙古伊金霍洛旗2022-2023学年七年级上学期期末考试英语试题.pdf
文档评论(0)