ImageVerifierCode 换一换
格式:DOCX , 页数:11 ,大小:19.92KB ,
资源ID:11371415      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/11371415.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(第6章事务与存储过程教学设计.docx)为本站会员(b****7)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

第6章事务与存储过程教学设计.docx

1、第6章事务与存储过程教学设计传智播客MySQL数据库入门教学设计课程名称: MySQL数据库入门授课年级: 2014年级 授课学期: 2014学年第一学期教师姓名: 某某老师 2014年09月09日课题名称第6章 事务与存储过程计划学时8 课时内容分析在数据库开发过程中,经常会为了完成某一功能而编写一组SQL语句。为了确保每一组SQL语句所做操作的完整性和重用性,MySQL中引入了事务和存储过程,本章将针对事务与存储过程进行详细地讲解。教学目标及基本要求1、 了解事务的概念,会开启、提交和回滚事务2、 掌握事务的四种隔离级别3、 学会创建存储过程4、 掌握调用、查看、修改和删除存储过程教学重点

2、1、 事务的开启、提交和回滚2、 事务的四种隔离级别3、 存储过程的创建和使用教学难点1、 事务的隔离级别2、 变量的使用3、 定义条件和处理程序4、 光标的使用5、 流程控制的使用教学方式讲师课堂教学要以PPT讲授为主,并结合多媒体进行教学教学过程第一课时(事务管理)一、创设情境,导入事务的概念(1)教师提出需求,引出事务在现实生活中,我们经常会进行转账操作,转账可以分为两部分来完成,转入和转出,只有这两个部分都完成才认为转账成功,在数据库中,这个过程是使用两条语句来完成的,如果其中任意一条语句出现异常没有执行,则会导致两个账户的金额不同步,造成错误。如何防止上述情况的发生呢?为此MySQL

3、中引入了事务,它可以使整个系统更加安全,保证在同一个事务中的操作具有同步性。(2)明确学习目标1、要求学生了解什么事务以及事务的四个特性2、要求学生掌握如何开启、提交和回滚事务。二、进行重点知识的讲解(1)什么是事务?教师讲解事务的概念,所谓的事务就是针对数据库的一组操作,它可以由一条或多条SQL语句组成,同一个事务的操作具备同步的特点,如果其中有一条语句无法执行,那么所有的语句都不会执行,也就是说,事务中的语句要么都执行,要么都不执行。教师讲解事务管理中涉及到的事务开启、提交和回滚操作,给出各自的SQL语句并解释。为了简单演示事务的三个操作,教师首先创建一个名为chapter06的数据库,在

4、库中建立account表并插入相应数据,接着通过一个具体的案例演示先开启一个事务,再通过UPDATE语句将a账户的100元钱转给b账户,最后提交事务(可参见教材例6-1)。在讲解完成之后,教师让学生默写出事务开启、提交和回滚操作的SQL。教师讲解事务的四个特性,即原子性(Atomicity)、一致性(Consistency)、隔离性(Isolation)、持久性(Durability),并分别解释各个特性的含义。(2)如何提交事务?教师讲解提交事务相当于是事务中的用户确认操作,当用户确认提交后,事务中的操作才会执行成功,这个过程是手动提交的过程。为了说明事务的提交方式为手动提交,通过一个具体的

5、案例来演示开启事务不提交退出、开启事务提交两种情况,并比较两种情况的执行结果。(3)如何回滚事务?教师首先讲解为什么要回滚事务,例如在操作一个事务时,如果发现当前事务中的操作是不合理的,此时只要还没有提交事务,就可以通过回滚来取消当前事务。然后通过一个具体的案例演示事务的回滚操作,开启一个事务,通过update语句将a账户的100元钱转给b账户,但是不提交,而是执行ROLLBACK语句将事务回滚,查看回滚操作后的结果。三、归纳总结,随堂练习,布置作业(1)对课堂上讲解的知识点进行总结,使用博学谷系统中的随堂练习题巩固本节课的知识点。(2)使用博学谷系统中的测试题给学生布置作业。第二课时(事务的

6、隔离级别)一、回顾上节课内容,继续讲解事务的隔离级别(1)对上节课留的作业进行答疑。(2)回顾总结上节课的内容,引出本节课主题 上节课讲解了事务的概念以及事务的开启、提交和回滚操作。本节课将讲解事务的隔离级别,在MySQL中,事务有四种隔离级别,分别是READ UNCOMMITTED(读未提交)、READ COMMITTED(读提交)、REPEATABLE READ(可重复读)、SERIALIZABLE(可串行化)。(3)明确学习目标要求学生知道事务有哪4种隔离级别,掌握这4种隔离级别各自的特点,了解脏读、幻读、不可重复读等问题的产生。二、进入重点知识点的讲解 (1)脏读教师讲解什么是脏读,所

7、谓脏读就是指一个事务读取了另外一个事务未提交的数据。教师通过一个具体的案例演示脏读问题的发生。首先开启两个命令行窗口分别模拟a账户和b账户,然后将B账户中事务的隔离级别设置为READ UNCOMMITTED(读未提交),在事务中进行转账操作并提交,最后查看是否出现脏读。作为比较,再将B账户中事务的隔离级别设置为read commited(读提交),然后在事务中进行转账操作并提交,查看是否出现脏读。(2)不可重复读(NON-REPEATABLE READ)教师讲解什么是不可重复读,所谓的不可重复读是指事务中两次查询的结果不一致,原因是在查询的过程中其他事务做了更新的操作。教师首先应给学生演示发生

8、的不可重复读现象,然后将事务的隔离级别改为REPEATABLE READ(可重复读),最后验证不可重复读是否仍然出现。(3)幻读(PHANTOM READ)教师讲解什么是幻读,所谓的幻读又被称为虚读,是指在一个事务内两次查询中数据条数不一致,幻读和不可重复读有些类似,同样是在两次查询过程中,不同的是,幻读是由于其他事务做了插入记录的操作,导致记录数有所增加。教师首先应给学生演示发生的幻读现象,然后将事务的隔离级别改为REPEATABLE READ,最后验证幻读是否仍然出现。(4)可串行化(SERIALIZABLE)教师讲解什么是SERIALIZABLE,SERIALIZABLE是事务的最高隔离

9、级别,它在每个读的数据行上加上锁,使之不可能相互冲突,因此会导致大量的超时现象。教师首先将事务的隔离级别改为SERIALIZABLE,然后给学生演示在该隔离级别下发生的可串行化现象,最后验证幻读是否仍然出现。三、归纳总结,布置作业(1)对课堂上讲解的知识点进行总结,使用博学谷系统中的随堂练习题巩固本节课的知识点。(2)使用博学谷系统中的测试题给学生布置作业。第三课时(存储过程的创建)一、回顾上节课内容,接着讲解存储过程的创建(1)对上节课留的作业进行答疑。(2)进入本节课题,讲解存储过程的创建及需要用到的变量存储过程就是一条或多条SQL语句的集合,当对数据库进行一系列复杂操作时,存储过程可以将

10、这些复杂操作封装成一个代码块,以便重复使用,大大减少数据库开发人员的工作量。本节课将针对如何创建存储过程及创建存储过程时需要用到的变量等进行详细地讲解。(3) 明确学习目标1、要求学生掌握如何创建存储过程、变量的使用2、要求学生了解如何定义条件和处理程序。二、进入重点知识点的讲解(1)如何创建存储过程?教师首先讲解创建存储过程的语法,对语法格式进行分析,然后根据语法格式,通过一个具体的案例来演示如何创建存储过程(可参见教材例6-2)。在案例演示前,教师需先做好准备工作,在chapter06数据库中创建student表并插入相应的数据。最后对案例进行解释,并对案例中DELIMITER语句进行详细

11、讲解。(2)存储过程中变量的使用教师讲解存储过程中变量的作用范围,在MySQL中,变量可以在子程序中声明并使用,这些变量的作用范围是在BEGINEND程序中。教师首先讲解存储过程中定义变量的语法格式,并对语法格式中涉及的内容进行讲解。然后根据定义变量的语法格式,编写一段示例代码。教师首先讲解存储过程中为变量赋值的语法格式,并对语法格式中涉及的内容进行讲解。然后根据定义变量的语法格式,编写一段示例代码。为变量赋值的方式,除了set之外,MySQL中还可以通过SELECTINTO为一个或多个变量赋值,教师讲解SELECTINTO的语法格式,并通过一个案例演示它的使用(可参见教材例6-3)。(3)定

12、义条件和处理程序教师讲解在存储过程中定义条件,首先讲解定义条件的语法格式,对语法格式进行分析,然后通过一个具体的案例演示用两种不同的方法来定义错误(可参见教材例6-4)。教师讲解在存储过程中定义处理程序,首先讲解定义处理程序的语法格式,对语法格式进行分析,然后通过一个具体的案例演示用两种不同的方法来定义错误(可参见教材例6-5)。最后教师再通过一个定义条件和处理程序的综合案例演示如何定义条件和处理程序(可参见教材例6-6)。三、归纳总结,布置作业(1)对课堂上讲解的知识点进行总结,使用博学谷系统中的随堂练习题巩固本节课的知识点。(2)使用博学谷系统中的测试题给学生布置作业。第四课时(光标的使用

13、、流程控制的使用)一、回顾上节课内容,继续讲解光标和流程控制的使用(1)对上节课留的作业进行答疑。(2)回顾总结上节课的内容,引出本节课主题上节课讲解了创建存储过程、变量的使用、定义条件和处理程序,本节课将讲解光标和流程控制的使用。(3) 明确学习目标1、 要求学生掌握光标的使用2、 要求学生掌握流程控制语句的使用二、进入重点知识点的讲解(1)光标的使用教师首先讲解什么是光标,光标有什么作用。然后分别针对光标的声明、光标的使用、光标的关闭进行详细地讲解。讲解光标的声明时,首先提醒学生注意光标必须声明在声明变量、条件之后,声明处理程序之前。然后讲解光标的语法格式,对语法格式进行分析,最后根据语法

14、格式编写一段示例代码,以便让学生更容易掌握。讲解光标的使用时,首先提醒学生使用光标之前首先要打开光标。然后讲解光标的语法格式,对语法格式进行分析,最后根据语法格式编写一段示例代码,以便让学生更容易掌握。讲解光标的关闭时,由于关闭的语法比较简单也很容易理解,直接写出语法格式“CLOSE cursor_name”,给学生简单解释其中的“cursor_name”表示光标名即可。(2)流程控制的使用教师首先讲解流程控制语句用于将多个SQL语句划分或组合成符合业务逻辑的代码块。MySQL中的流程控制语句包括:IF语句、CASE语句、LOOP语句、WHILE语句、LEAVE语句、ITERATE语句、REP

15、EAT语句和WHILE语句。然后分别针对这些语句进行一一讲解,按照先讲解语法格式,再通过示例代码或案例演示的方式,在讲解的过程中,教师还应该提醒学生注意每个知识点的重点内容。三、归纳总结,布置作业(1)对课堂上讲解的知识点进行总结,使用博学谷系统中的随堂练习题巩固本节课的知识点。(2)使用博学谷系统中的测试题给学生布置作业。第五课时(存储过程的使用)一、回顾上节课内容(1)对上节课留的作业进行答疑。(2)进入本节课题,讲解调用和查看存储过程通过前面课时的学习,我们已经能够定义一个完整的存储过程了。使用存储过程可以使程序执行效率更高、安全性更好,增强程序的可重用性和维护性。(3)明确学习目标1、

16、要求学生掌握如何调用、修改和删除存储过程2、要求学生了解如何查看存储过程二、进入重点知识点的讲解(1)如何调用存储过程?教师首先讲解调用存储过程的语法格式,语法格式具体如下:CALL sp_name(parameter,)然后对上述语法格式进行解释说明,比如sp_name为存储过程的名称,parameter为存储过程的参数,最后通过一个案例演示存储过程的调用(可参见教材例6-12)。(2)如何查看存储过程?查看存储过程的方式有三种,具体如下: 通过SHOW STATUS语句查看存储过程的状态 通过SHOW CREATE语句查看存储过程的状态 从information_schema.Routin

17、es表中查看存储过程的信息在讲解查看存储过程的三种方式时,应该遵循首先讲解其语法格式,对语法格式进行详细地解释说明,然后通过具体的案例演示的教学方式来讲解,在最后教师还应该对每种查看方式的使用进行一个总结,并提醒学生在学习过程中需要注意的东西。(3)如何修改存储过程?教师首先讲解修改存储过程的语法格式,语法格式具体如下:ALTER PROCEDURE|FUNCTION sp_namecharacteristic然后对上述语法格式进行解释说明,比如sp_name表示存储过程或函数的名称;characteristic表示要修改存储过程的哪个部分,其中characteristic的取值只需要学生了解

18、,最后通过一个案例演示如何修改存储过程(可参见教材例6-15)。(4)如何删除存储过程?教师首先讲解删除存储过程的语法格式,语法格式具体如下:DROP PROCEDURE|FUNCTION IF EXISTS sp_name然后对上述语法格式进行解释说明,比如sp_name 为要移除的存储过程的名称。IF EXISTS表示如果程序不存在,它可以避免发生错误,产生一个警告。最后通过一个案例演示如何删除存储过程(可参见教材例6-16)。三、归纳总结,布置作业(1)对课堂上讲解的知识点进行总结,使用博学谷系统中的随堂练习题巩固本节课的知识点。(2)使用博学谷系统中的测试题给学生布置作业。第六课时(综

19、合案例存储过程的应用)一、回顾上节课内容(1)对上节课留的作业进行答疑。(2)明确学习目标要求学生熟悉在实际开发中,创建并使用存储过程的完整过程二、进入重点知识点的讲解(1)在实际开发中,存储过程怎样应用?教师首先应该做好准备工作,在chapter06数据库中创建一个stu表,并向表中添加数据。然后创建一个存储过程addcount,该存储过程能够获取表stu中的记录数和id的和。教师在编写存储过程addcount时,先提问学生编写的思路,让学生带着思考来听接下来的教师讲解过程。最后教师逐行编写创建addcount存储过程的代码,边编写边解释。三、归纳总结,布置作业(1)对课堂上讲解的知识点进行

20、总结,使用博学谷系统中的随堂练习题巩固本节课的知识点。(2)使用博学谷系统中的测试题给学生布置作业。第七课时(上机练习)上机练习主要针对本章中需要重点掌握的知识点,以及在程序中容易出错的内容进行练习,通过上机练习可以考察同学对知识点的掌握情况,对代码的熟练程度。上机一:(考察知识点为光标的使用)请按照以下要求创写出光标使用的语法格式要求如下:1) 声明光标2) 打开光标,使用光标3) 关闭光标第八课时(上机练习)上机一:(考察知识点为创建存储过程和存储过程中变量的使用)请按照以下要求编写一个存储过程。要求如下:1) 创建一个名为proc_add存储过程用于实现两个数相加2) 存储过程proc_add有两个输入参数,分别为a和b,均表示加数3) 定义一个变量c,用于接收两数相加的结果4) 当调用该存储过程时,能够输出c的值思考题和习题教学后记

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1