存储过程和触发器

存储过程和触发器

ID:14222996

大小:128.50 KB

页数:7页

时间:2018-07-27

存储过程和触发器_第1页
存储过程和触发器_第2页
存储过程和触发器_第3页
存储过程和触发器_第4页
存储过程和触发器_第5页
资源描述:

《存储过程和触发器》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、存储过程和触发器管理实验报告学院:信息学院班级:电子信息工程学号:20091060253姓名:郑璇成绩:【实验目的】1.学习创建存储过程。2.学习创建管理触发器。【实验内容】1.在pubs数据库中创建存储过程avg_price,用于求所有出版图书的平均单价。并通过输出参数返回该平均单价。要求在创建过程之前要首先判断该存储过程是否已经存在,如果存在,则将其删除。执行存储过程,打印图书平均单价。ifexists(selectnamefromsysobjectswherename='avg_price'andtype='p')dropprocedureavg_pri

2、cegocreateprocedureavg_price@avgpricefloatoutputasselect@avgprice=avg(price)fromtitlesgodeclare@avgpricefloatexecavg_price@avgpriceoutputprint@avgprice3.在pubs数据库中创建存储过程max_price,根据存储过程的图书类型(输入参数)返回该类图书的最高单价(输出参数)。要求在创建过程之前要首先判断该存储过程是否已经存在,如果存在,则将其删除。ifexists(selectnamefromsysobjects

3、wherename='max_price'andtype='p')dropproceduremax_pricegocreateproceduremax_price@typechar(50),@maxfloatoutputasselect@max=max(price)fromtitleswheretype=@typego4.执行第三题创建的存储过程max_price,指定图书类型为“mod_cook”,打印该类型图书的最高单价。declare@maxfloatexecmax_price'mod_cook',@maxoutputprint@max5.删除存储过程a

4、vg_price,max_price。dropprocedureavg_pricedropproceduremax_price二.触发器创建一个“学生信息”数据库,包含“学生基本信息”表、“专业”表和“系”表,各表包含的字段如下。●“学生基本信息”表:学号;性别;班级;出生日期;专业编号。●“专业”表:专业编号;专业名称;系编号。●“系”表:系编号;系名称;系简介。各字段类型按其实际含义自行定义,输入一些数据,要求数据要有代表性。以下操作要求全部在查询分析器中完成,保存或记录实现各题功能的Transcat-SQL语句。1.在“专业”表上创建一个INSERT触发

5、器“TRG1”。当发生插入专业表操作时,将显示插入的记录。2.在“专业”表表上创建一个DELETE触发器“TRG2”。当发生删除操作时,将给出警告、列出删除的记录并撤消删除。1.在“专业”表表上创建一个UPDATE触发器“TRG3”。当发生更新“专业名称”字段的操作时,给出警告并撤消更新。ifexists(selectnamefromsysobjectswherename='trg3'andtype='tr')droptriggertrg3gocreatetriggertrg3on专业forupdateasifupdate(专业名称)beginprint'不允

6、许更新专业名称!'rollbacktransactionendelseprint'没有更新专业名称,不需要触发器处理'goupdate专业set专业名称='新专业A'where专业名称='新专业'2.在“学生基本信息”表上创建一个更新触发器“TRG4”,当发生更新“学号”或“姓名”字段的操作时给出警告,并撤消更新。droptriggertrg4gocreatetriggertrg4on学生基本信息forupdateasifupdate(学号)orupdate(姓名)beginprint'不允许更新学号或姓名'rollbacktransactionendelse

7、print'没有更新学号或姓名,不需要触发器处理'goupdate学生基本信息set学号='2002090261'where学号='2002090161'GOupdate学生基本信息set姓名='张三'where学号='2002090161'1.创建一个视图view1,view1中包含了某班级的学生基本信息的以下字段:学号;姓名;性别;出生日期。现在要通过该视图向该班级添加新的学生信息,在该视图上创建一个INSTEADOF触发器“TRG5”,使得添加到“学生基本信息”表中的记录内容完整。createviewview1asselect学号,姓名,性别,出生日期f

8、rom学生基本信息goifexists

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。