欢迎来到淘文阁 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
淘文阁 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    数据库实验八:触发器及应用(共6页).doc

    • 资源ID:13966841       资源大小:105KB        全文页数:6页
    • 资源格式: DOC        下载积分:20金币
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录   QQ登录  
    二维码
    微信扫一扫登录
    下载资源需要20金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    数据库实验八:触发器及应用(共6页).doc

    精选优质文档-倾情为你奉上数据库实验八:触发器及应用一、实验目的与要求:1实验目的(1)学习触发器的使用,加深对触发器功能和作用的理解。(2)体会触发器执行的时机。2实验要求建立如下的存储过程(基于前面实验建立的表和插入的数据,并为每个存储过程设计返回的状态值): (1)为选课表分别建立插入和更新触发器,如果当前学生累计不及格门数达到5则给出警示信息。(2)为课程表分别建立插入和更新触发器来建立约束规则:“专业基础”课的教师必须为“教授”或“副教授”,如果不满足约束则拒绝操作,并给出错误信息。(3)自行再分别设计23个触发器(在实验报告中要准确描述功能需求)。(4)设计并执行相关的操作,体会DML触发器的效果和作用。二、实验内容1、实验原理 建立触发器的语句是:CREATE TRIGGER schema_name.trigger-nameON table |viewFOR INSERT | UPDATE | DELETE ASIF UPDATE (column) AND | OR UPDATE (column)sql-statement2、实验步骤与结果 (1)调出SQL Server2005软件的用户界面,进入SQL SERVER MANAGEMENT STUDIO。(2)输入自己编好的程序。(3)检查已输入的程序正确与否。(4)运行程序,并分析运行结果是否合理和正确。在运行时要注意当输入不同的数据时所得到的结果是否正确。(5)输出程序清单和运行结果。(1)为选课表分别建立插入和更新触发器,如果当前学生累计不及格门数达到5则给出警示信息。插入触发器:create trigger xk_triggeron 选课for insert asdeclare amount int, xh char(10)select xh=学号 from insertedif xh is not nullbeginselect amount=(select count(*)from 选课 where 成绩<60 and 学号=xh)if amount>=5beginraiserror('不及格达到5门',16,10)endendinsert into 选课 values('001','03','50')insert into 选课 values('001','02','50')insert into 选课 values('001','04','50')更新触发器:create trigger xk_trigger2on 选课for updateasdeclare amount int, xh char(10)select xh=学号 from insertedif xh is not nullbeginselect amount=(select count(*)from 选课 where 成绩<60 and 学号=xh)if amount>=5beginraiserror('不及格达到5门',16,10)endendupdate 选课 set 成绩=50 where 学号='001' and 课程编号='02'update 选课 set 成绩=50 where 学号='001' and 课程编号='03'update 选课 set 成绩=50 where 学号='001' and 课程编号='04'update 选课 set 成绩=50 where 学号='001' and 课程编号='05'update 选课 set 成绩=50 where 学号='001' and 课程编号='06'(2) 为课程表分别建立插入和更新触发器来建立约束规则:“专业基础”课的教师必须为“教授”或“副教授”,如果不满足约束则拒绝操作,并给出错误信息。插入触发器:create trigger kc_trigger3on 课程for insertasdeclare zc char(10),zrjs char(10),kcbh char(10),kcxz char(10)select kcbh=课程编号,zrjs=责任教师 from insertedif kcbh is not nullbeginselect kcxz=课程性质 from 课程select zc=职称 from 教师 where 教师编号 in(select 责任教师 from 课程 where 课程性质='专业基础')if zc!='教授' or zc!='副教授' beginraiserror('该专业基础课的教师不是教师或副教授!',15,10)rollback transaction endEndinsert into 课程 values('09','TCP协议','2','8','专业基础')更新触发器:create trigger kc_trigger4on 课程for updateasdeclare zc char(10),zrjs char(10),kcbh char(10),kcxz char(10)select kcbh=课程编号,zrjs=责任教师 from insertedif kcbh is not nullbeginselect kcxz=课程性质 from 课程select zc=职称 from 教师 where 教师编号 in(select 责任教师 from 课程 where 课程性质='专业基础')if zc!='教授' or zc!='副教授' beginraiserror('该专业基础课的教师不是教师或副教授!',16,10)rollback transaction endEndupdate 课程 set 课程性质= '专业基础' where 责任教师='4'三、实验分析与小结:(实验过程中的问题分析、产生的原因以及解决方法;实验结果分析; 有待优化思路)1、实验过程中的问题分析、产生的原因以及解决方法。2、实验结果分析; 有待优化思路。由于check约束只能引用定义了列级或表级约束的列,表间的任何约束都必须通过定义触发器来实现。在进行触发器的插入和更新操作的时候,其实可以两个放在一起执行,但想让自己在执行和修改程序时的方便,便分开来写。四、其它思考题:1为什么要使用触发器?2触发器和游标的异同之处?答:1、触发器是一种程序或是一种过程,它是事先设计好存储在数据库中的,是在某个特定条件发生时自动触发执行的,是提高数据库服务器性能的有力工具。2、游标类似一个RecordSet,可以在SQL语句中依次遍历某个select的结果集的每行记录每个字段。触发器用来进行一些自动的数据库维护,比如在某张表发生变化的时候,自动在另外一个表里做上记录。得分(百分制) 专心-专注-专业

    注意事项

    本文(数据库实验八:触发器及应用(共6页).doc)为本站会员(飞****2)主动上传,淘文阁 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知淘文阁 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于淘文阁 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

    本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

    工信部备案号:黑ICP备15003705号 © 2020-2023 www.taowenge.com 淘文阁 

    收起
    展开