下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
博学谷——让IT教学更简单,让IT学习更有效《MySQL数据库案例教程》教学设计课程名称:授课年级:授课学期:教师姓名:年月课题名称任务8实现学生选课系统数据库事务控制计划课时4课时教学引入学期末,王宁的同学李四向他借1000元,于是,王宁到自动存取款机上转账。如果余额足够,则在转账成功后,王宁的账户减少1000元,李四的账户增加1000元,如果转账过程中发生异常情况,则需把所有数据回退,在这个过程中,需要用到事务的知识,从而保证数据的一致性。通过启动事务,了解事务的概念和特性,了解事务的隔离级别,掌握事务的提交、回滚等操作。教学目标了解事务的概念,能够说出事务的特性;掌握事务的基本操作;了解事务的隔离级别。教学重点掌握事务的基本操作;教学难点掌握事务的基本操作;教学方式课堂教学以PPT讲授为主,并结合多媒体进行教学教学过程第1、2课时一、复习巩固教师通过上节课作业的完成情况,对学生吸收不好的知识点进行再次巩固讲解。二、通过直接导入的方式导入新课在数据库开发过程中,经常会为了完成某一功能而编写一组SQL语句。为确保每一组SQL语句操作数据的完整性,MySQL引入了事务的管理,MySQL的事务处理机制在程序开发过程中有着非常重要的作用,它可以使整个系统更加安全,保证在同一个事务中的操作具有同步性。事务在MySQL中相当于一个工作单元,使用事务可以确保同时发生的行为不发生冲突,并且维护数据的完整性,确保数据的有效性。三、新课讲解教师通过PPT结合实际操作的方式讲解。所谓的事务是指由用户定义的一系列数据库更新操作,这些操作要么都执行,要么都不执行,是一个不可分割的逻辑工作单元。这里的更新操作主要指对数据库内容产生修改作用的操作,如INSERT、DELETE、UPDATE等操作。事务是数据库中实现数据的一致性的重要技术。例如在银行转账业务处理过程中,客户A要给客户B转账,当转账进行到一半时,发生断电等异常事故,导致客户A的钱已转出,客户B的钱还没有转入,这样就会导致数据库中数据的不一致,给客户带来损失。在转账业务中引|入事务机制,就可以在意外发生时撤销整个转账业务,将数据库恢复到数据处理之前的状态,从而确保数据的一致性。1.事务的特性MySQL中的事务必须具有4个特性,即原子性(Atomicity)、一致性(Consistency)、隔离性(Isolation)和持久性(Durability),简称ACID特性。2.事务的基本操作对事务进行初步的了解后,接下来学习事务的处理,主要是事务的基本操作,包括启动事务、提交事务以及回滚事务,具体介绍如下。(1)启动事务在MySQL中启动事务的语法格式如下:STARTTRANSACTION;(2)提交事务启动事务之后,就开始执行事务内的SOL语句,当SOL语句执行完毕后,必须提交事务,才能使事务中的所有操作永久生效。提交事务的语法格式如下:COMMIT;需要注意的是,在MySQL中直接书写的语句都是自动提交的,而事务中的操作语句都需要使用COMMIT语句手动提交。(3)回滚事务当事务在执行过程中遇到错误时,事务中的所有操作都要被取消,返回到事务执行前的状态,这就是回滚事务。回滚事务的语法格式如下:ROLLBACK;四、归纳总结教师回顾本节课所讲的内容,并通过测试题的方式引导学生解答问题并给予指导。五、布置作业教师通过学习通布置本节课作业以及下节课的预习作业。第3、4课时一、复习巩固教师通过上节课作业的完成情况,对学生吸收不好的知识点进行再次巩固讲解。二、通过直接导入的方式导入新课MySQL数据库是多线程并发访问的,用户可以通过不同的线程执行不同的事务,在多个线程同时开启事务访问数据库时,可能会出现脏读、不可重复读以及幻读等情况。为了保证这些事务之间不受影响,设置事务的隔离级别十分必要。三、新课讲解教师通过PPT结合实际操作的方式讲解。1.多个线程同时开启事务访问时数据库的情况(1)脏读脏读是指一个事务读取另一个事务没有提交的数据。它是指第一个事务正在访问数据,并且对数据进行了修改,当这些修改还没有提交时,第二个事务访问和使用了这些数据。如果第一个事务回滚,那么第二个事务访问和使用的数据则是脏数据。(2)不可重复读不可重复读是指在一个事务内,对同一数据进行两次相同查询,所返回结果不同。这是由于在一个事务两次读取数据之间,有第二个事务对数据进行了修改,造成两次读取数据的结果不相同。(3)幻读幻读是指在同一事务中,两次按相同查询条件查询到的记录的行数不一样。造成幻读的原因在于事务处理没有结束时,其他事务对同一数据集合增加或者删除了记录。2.隔离级别概述为了避免以上情况的发生,MySQL设置了事务的4种隔离级别,由低到高分别为READUNCOMMITTED、READCOMMITTED、REPEATABLEREAD、SERIALIZABLE,其能够有效地防止脏读、不可重复读以及幻读等情况的发生。(1)READUNCOMMITTEDREADUNCOMMITTED就是“读未提交”,在该隔离级别下的事务可以读取另一个未提交事务的数据,它是事务中的最低的隔离级别,这种读取的方式也被称为脏读(dirtyread),很少应用。(2)READCOMMITTEDREADCOMMITTED就是“读提交”,顾名思义,就是在该隔离级别下的事务只能读取其他事务已经提交的数据,是大多数DBMS(如SQLServer、Oracle)的默认隔离级别,避免了脏读的现象,但这种隔离级别容易出现不可重复读的问题,不可重复读是指在一个事务中,数据发生了改变,多次查询的结果不一致。(3)REPEATABLEREADREPEATABLEREAD就是“可重复读”,它是MySQL的默认事务隔离级别,能够确保同一事务的多个实例并发读取数据时,读到的数据行是相同的,解决了脏读和不可重复读的问题,但这种隔离级别容易出现幻读的问题。(4)SERIALIZABLESERIALIZABLE就是“可串行化”,它是MySQL最高的、最严格的隔离级别3.修改隔离级别用户可以用SETTRANSACTION语句改变当前会话或所有新建连接的隔离级别,其语法式如下:SET[SESSION|GLOBAL]TRANSACTIONISOLATIONLEVEL{READUNCOMMITTED|READCOMMITTED|REPEATABLEREAD|SERIALIZABLE}例如,设置当前会话的隔离级别为READCOMMITT
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 济宁市泗水县2025届四下数学期末考试试题(含解析)
- 济宁市微山县2025届三年级数学下学期期末监测模拟试题含答案解析
- 泸州市龙马潭区2025届数学三年级第二学期期末检测试题(含答案)
- 汽车美容装潢工安全意识强化能力考核试卷含答案
- 螺旋桨钳工岗前合规考核试卷含答案
- 无线电计量员岗前安全生产意识考核试卷含答案
- 涡轮发动机修理工岗位业务考核试卷含答案
- 纺粘熔喷热轧非织造布制作工技能安全知识考核试卷含答案
- 合成碳膜电位器制造工班组安全模拟考核试卷含答案
- 桩工机械装配调试工安全生产知识测试考核试卷含答案
- 2026年项目试生产安全管控试题(含答案)
- 2025 年党员发展对象培训核心考点速记手册
- 病理科免疫组化染色标准化操作指南(2025版)
- 2026年部编版新教材道德与法治八年级上册全套单元、期中、期末检测题及答案(共6套)
- 中国临床肿瘤学会(CSCO)抗肿瘤治疗相关恶心呕吐诊疗指南2025
- 2027年湖南省常规选调600人笔试备考题库及答案解析
- 宜昌远安县航远产业投资有限公司招聘笔试题库2026
- GB 20815-2026视频安防监控数字录像设备
- 2026-2027学年七年级语文上册期中综合冲刺模拟测试试卷
- 2026年研发人员薪酬考核方案
- 食品检验检测机构授权签字人考核通关指南
评论
0/150
提交评论