您所在位置: 网站首页 / 文档列表 / 数据库 / 文档详情
sql触发器习题[精华].pdf 立即下载
上传人:17****27 上传时间:2024-09-07 格式:PDF 页数:9 大小:1.2MB 金币:10 举报 版权申诉
预览加载中,请您耐心等待几秒...

sql触发器习题[精华].pdf

sql触发器习题[精华].pdf

预览

在线预览结束,喜欢就下载吧,查找使用更方便

10 金币

下载文档

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

SQL触发器习题(一)实验任务一:1、创建触发器在学生信息管理系统中,学生信息表包含列“学号”、“姓名”、“性别”、“出生年月”、“班级号”;班级信息表中包含列“班级号”、“班级名称”、“人数”;课程信息表包含列“课程代号”、“课程名称”;学生成绩表包含列“学号”、列“课程代号”、列“成绩”,已用约束保证成绩的范围为0~100分。(用附录中的脚本创建)--1)在student上创建INSERT触发器stu_insert,要求在student表中插入记录时(要求每次只能插入一条记录),这个触发器都将更新class表中的class_nun列。并测试触发器stu_insert。createtriggerstu_insertonstudentforinsertasif@@rowcount>1beginRAISERROR('Youcannotinsertmorethanonestudentatatime.',16,1)ROLLBACKTRANreturn--注意此处的return语句不能省略,因为在触发器脚本中的ROLLBACKTRAN语句之后还存在语句,那么将会执行这些语句,而为了其后的语句不执行,必须加入return语句endupdateclasssetclass_num=class_num+1whereclass_id=(selectclass_idfrominserted)print'class表中数据更新成功'go--测试1insertintostudentselect'0601012','丽','女','1986-07-11','0601'unionallselect'0601013','梅','女','1988-02-07','0601'--测试2insertintostudentvalues('0602011','文','女','1986-09-21','0602')--2)修改题1中创建的INSERT触发器stu_insert,要求在student表中插入记录时(允许插入多条记录),这个触发器都将更新class表中的class_nun列。并测试触发器stu_insert。altertriggerstu_insertonstudentforinsertasupdateclasssetclass_num=class_num+(selectcount(class_id)frominsertedwhereclass.class_id=inserted.class_id)print'class表中数据更新成功'go--测试1insertintostudentselect'0601012','丽','女','1986-07-11','0601'unionallselect'0601013','梅','女','1988-02-07','0601'--测试2insertintostudentvalues('0602011','文','女','1986-09-21','0602')--3)在student上创建DELETE触发器stu_delete,要求在student表中删除记录时,这个触发器都将更新class表中的class_nun列。并测试触发器stu_delete。createtriggerstu_deleteonstudentfordeleteasupdateclasssetclass_num=class_num-(selectcount(class_id)fromdeletedwhereclass.class_id=deleted.class_id)go--测试1deletefromstudentwherestu_id='0601001'--测试2deletefromstudent--4)为防止其他人修改成绩,在score上创建UPDATE触发器sc_update,要求不能更新score表中的score列。测试触发器sc_update。createtriggersc_updateonscoreforupdateasifupdate(score)beginprint'不允许修改score列'rollbacktranendgo--尝试修改score列updatescoresetscore=992、查看触发器相关信息:使用系统存储过程sp_help,sp_helptext,sp_helptrigger查看触发器相关信息。execsp_helpexecsp_helpsc_updateexecsp_helptextsc_updatee
单篇购买
VIP会员(1亿+VIP文档免费下)

扫码即表示接受《下载须知》

sql触发器习题[精华]

文档大小:1.2MB

限时特价:扫码查看

• 请登录后再进行扫码购买
• 使用微信/支付宝扫码注册及付费下载,详阅 用户协议 隐私政策
• 如已在其他页面进行付款,请刷新当前页面重试
• 付费购买成功后,此文档可永久免费下载
年会员
99.0
¥199.0

6亿VIP文档任选,共次下载特权。

已优惠

微信/支付宝扫码完成支付,可开具发票

VIP尽享专属权益

VIP文档免费下载

赠送VIP文档免费下载次数

阅读免打扰

去除文档详情页间广告

专属身份标识

尊贵的VIP专属身份标识

高级客服

一对一高级客服服务

多端互通

电脑端/手机端权益通用

手机号注册 用户名注册
我已阅读并接受《用户协议》《隐私政策》
已有账号?立即登录
我已阅读并接受《用户协议》《隐私政策》
已有账号?立即登录
登录
手机号登录 微信扫码登录
微信扫一扫登录 账号密码登录

首次登录需关注“豆柴文库”公众号

新用户注册
VIP会员(1亿+VIP文档免费下)
年会员
99.0
¥199.0

6亿VIP文档任选,共次下载特权。

已优惠

微信/支付宝扫码完成支付,可开具发票

VIP尽享专属权益

VIP文档免费下载

赠送VIP文档免费下载次数

阅读免打扰

去除文档详情页间广告

专属身份标识

尊贵的VIP专属身份标识

高级客服

一对一高级客服服务

多端互通

电脑端/手机端权益通用