实验五++存储过程和触发器_第1页
实验五++存储过程和触发器_第2页
实验五++存储过程和触发器_第3页
实验五++存储过程和触发器_第4页
实验五++存储过程和触发器_第5页
已阅读5页,还剩9页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

实验六:存储过程和触发器一、实验目的1、理解存储过程的概念,掌握创建与运行存储过程的一般方法,加深对客户/服务器机制的理解。2、掌握触发器的创建方法,学习触发器的使用,体会触发器执行的时机,加深对触发器功能和作用的理解。3、比较存储过程和触发器的异同。4、掌握数据库事务处理语句1二、实验内容实验数据:实验二所建的数据库及表,实验三录入表中的数据。1、存储过程的建立和执行分别建立有没参数、有参数(定义缺省和不定义缺省)、有返回值的存储过程。存储过程的执行2、触发器的创建与执行各类触发器分别建立一个,再设计一组有效和无效的操作数据,触发各个触发器执行3、数据库事务处理操作语句2三、实验重点与难点1、重点:(1)有参数的存储过程的建立(2)触发器的执行2、难点:设计一系列操作触发触发器的执行。3四、实验步骤1、恢复上次课的数据库表结构和数据。2、完成以下操作1)存储过程的创建与执行(1)建立存储过程P1,查询选修了某门课程的学生信息(其中课程名,返回值自行设计)(2)建立存储过程P2,将某班的所有学生的成绩放在一个临时表中。(3)建立存储过程P3,计算某一个专业的某一门课和的平均成绩,显示出专业名称、课程名称和平均成绩4(4)建立存储过程p1,功能:查询成绩在X到Y之间的学生信息,设计返回值:当输入的值为空时:返回值10,提示“请提供范围!”;当输入的X或Y不在0到100之间时:返回值11,提示“输入的值不对!”;当输入的值X>Y时:返回值12,提示“X应小于Y!”;当查找后没有满足条件的记录时:返回值-10,提示“对不起!没有满足条件的记录!”(5)运行所建立的存储过程,观察其执行结果。52)触发器的建立

首先删除各个表中的外码约束。(1)在课程表和成绩表上建立一组触发器,实现课程表的课程号与成绩表的课程号之间的参照关系。(2)在成绩表上建立一个插入和修改类的触发器,实现当修改成绩时,检查修改后的成绩是否在0到100之间,如果是,插入或修改成功,否则失败。(3)触发器的执行分别对学生表、课程表和成绩表进行插入、删除和修改操作,触发相应触发器的执行,观察其执行结果。6(1)存储过程示例:createprocd_s2@classno1varchar(20)asbeginselect*into##sc1fromscwheresnoin(selectsnofromstudentwhereclassno=@classno1)select*from#class11end7(2)触发器示例:altertriggerin_sconscforinsert,updateasifnotexists(selectstudent.snofromstudent,insertedwherestudent.sno=inserted.sno)ornotexists(selectofromcourse,insertedwhereo=o)beginprint('没有该学生学号或没有该课程号')rollbackend83、数据准备:执行如下命令Select*into##tempfromCustomers,将Customers的数据倒入到##temp表中。启动事务,执行删除后,回滚事务选择##temp的数据,察看记录总数显式启动事务删除##temp表的数据选择##temp数据,察看记录总数回滚事务选择##temp数据,察看记录总数9启动事务,执行删除后,提交事务选择##temp数据,察看记录总数显式启动事务删除##temp表的数据选择##temp的数据,察看记录总数回滚事务选择##temp数据,察看记录总数比较这两次执行效果的差异,为什么会有这些差异?10五、注意:1、如果为存储过程指定参数且没有定义参数的缺省值,必须在运行时给出参数值2、对表者操作时触发相应的触发器执行,因此设计操作时必须要设计满足触发器条件和不满足条件两种操作,才能体会到触发器的作用11思考与练习1、存储过程与触发器的运行方式有什么不同?2、编写存储过程实现对表的插入、删除与修改12实验要求1、按照实验要求进行实验,实验时注每种SQL语句的命令格式及关键字的含义,做好实验记录。2、实验后:分析实验结果,总结实验知识,得出结论,按格式写出实验报告。3、在整个实验过程中,要独立思考、独立按时完成实验任务,不

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论