欢迎来到天天文库
浏览记录
ID:23922976
大小:933.50 KB
页数:21页
时间:2018-11-11
《数据库实验报告三》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、WORD格式可编辑《数据库原理》实验报告实验五:触发器、存储过程和函数实验六:ODBC/JDBC数据库编程学号姓名班级日期2013302534杨添文100113032015.10.31实验五:触发器、存储过程和函数一、实验内容1.使用系统存储过程(sp_rename)将视图“V_SPJ”更名为“V_SPJ_三建”。(5分)(1)在原有数据库SPJ中,建立如下语句:execsp_rename'V_SPJ','V_SPJ三建'(2)结果为:2.针对SPJ数据库,创建并执行如下的存储过程:(共计35分)(1)创建一个带参数的存储过
2、程—jsearch。该存储过程的作用是:当任意输入一个工程代号时,将返回供应该工程零件的供应商的名称(SNAME)和零件的名称(PNAME)以及工程的名称(JNAME)。执行jsearch存储过程,查询“J1”对应的信息。(10分)(1)存储过程为:createprocedurejsearch(@searchingfor_jnonchar(20))asbeginselectJ.JNAME,S.SNAME,P.PNAMEfromS,P,J,SPJwhereSPJ.JNO=@searchingfor_jnoandSPJ.JNO=
3、J.JNOandSPJ.SNO=S.SNOandSPJ.PNO=P.PNOEnduse[SPJ]技术资料专业整理WORD格式可编辑go(2)执行存储过程如下:declare@solutionintexec@solution=[dbo].[jsearch]@searchingfor_jno=N'J1'select'solution'=@solutiongo(3)结果:(1)使用S表,为其创建一个加密的存储过程—jmsearch。该存储过程的作用是:当执行该存储过程时,将返回北京供应商的所有信息。(10分)createproce
4、durejmsearchwithencryptionasbeginselect*fromSwhereCITY='北京'end(2)使用系统存储过程sp_helptext查看jsearch,jmsearch的文本信息。(5分)(1)当输入为:execsp_helptext'jsearch'结果是:技术资料专业整理WORD格式可编辑(2)当输入为:execsp_helptext'jmsearch'结果是:(1)执行jmsearch存储过程,查看北京供应商的情况。(5分)(1)执行存储过程:use[SPJ]godeclare@so
5、lutionintexec@solution=[dbo].[jmsearch]select'solution'=@solutiongo(2)结果为:(2)删除jmsearch存储过程。(5分)技术资料专业整理WORD格式可编辑dropprocedurejmsearch1.针对Student数据库,创建和执行如下的触发器:(共计40分)(1)删除SC表上的外键约束,针对SC表创建一个名为insert_s的INSERT触发器。该触发器的功能:当用户向SC表中插入记录时,如果插入的cno值不是C表中Cno的已有值,则提示用户“不能
6、插入记录这样的纪录”,否则提示“记录插入成功”。触发器创建成功之后,向SC表插入记录,验证触发器是否正常工作。(5分)(1)创建触发器:usestudentgocreatetriggerinsert_sonscafterinsertasif(exists(select*frominsertedwherecno!='1'orcno!='2'orcno!='3'orcno!='6'))beginprint'不能插入记录这样的纪录'rollbacktransactionendelseprint'记录插入成功'(2)验证:usest
7、udentgoinsertintosc(sno,cno,grade)values('95001','5','88')结果:(2)为S表创建一个名为dele_s1的DELETE触发器,该触发器的作用是禁止删除S表中的记录。触发器创建成功之后,删除S表中的记录,验证触发器是否正常工作。(5分)(1)创建触发器:技术资料专业整理WORD格式可编辑usestudentgocreatetriggerdele_s1onsafterdeleteasrollbacktransactionprint'不能删除表中纪录'go(2)验证:当要删除
8、表中记录时,出现如下图所示情况(1)为S表创建一个名为dele_s2的DELETE触发器,该触发器的作用是删除S表中的记录时删除SC表中该学生的选课纪录。触发器创建成功之后,删除S表中的记录,验证触发器是否正常工作(SC表中的数据被正常删除)。(5分)(1)创建触发器:usestudent
此文档下载收益归作者所有