2024年数据库实验报告.docx

  1. 1、本文档共15页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多

《数据库原理》试验汇报

題目:试验五:触发器、存储過程和函数

學号

姓名

班级

曰期

xxxxx

xx

xxxxx

.10.29

试验内容、环节以及成果

使用系统存储過程(sp_rename)将视图“V_SPJ”更名為“V_SPJ_三建”。(5分)

execsp_renamev_spj,v_spj_三建;

针對SPJ数据库,创立并执行如下的存储過程:(合计35分)

创立一种带参数的存储過程—jsearch。该存储過程的作用是:當任意输入一种工程代号時,将返回供应當工程零件的供应商的名称(SNAME)和零件的名称(PNAME)以及工程的名称(JNAME)。执行jsearch存储過程,查询“J1”對应的信息。(10分)

createprocjsearch@jnochar(2)

asselectsname,pname,jnamefroms,p,j,spj

wheres.sno=spj.snoandp.pno=spj.pnoandj.jno=spj.jnoandspj.jno=@jno;

执行:execjsearchJ1

使用S表,為其创立一种加密的存储過程—jmsearch。该存储過程的作用是:當执行该存储過程時,将返回北京供应商的所有信息。(10分)

创立加密存储過程:

createprocjmsearchwithencryptionas

select*fromswheres.city=北京;

sp_helptextjmsearch;

使用系统存储過程sp_helptext查看jsearch,jmsearch的文本信息。(5分)

用系统存储過程sp_helptext查看jsearch:

execsp_helpjsearch;

execsp_helptextjsearch;

用系统存储過程sp_helptext查看jmsearch:

execsp_helpjmsearch;

execsp_helptextjmsearch;

执行jmsearch存储過程,查看北京供应商的状况。(5分)

execjmsearch;

删除jmsearch存储過程。(5分)

drop?proc?jmsearch;

针對Student数据库,创立和执行如下的触发器:(合计40分)

删除SC表上的外键约束,针對SC表创立一种名為insert_s的INSERT触发器。该触发器的功能:當顾客向SC表中插入记录時,假如插入的cno值不是C表中Cno的已經有值,则提醒顾客“不能插入记录這样的纪录”,否则提醒“记录插入成功”。触发器创立成功之後,向SC表插入记录,验证触发器与否正常工作。(5分)

createtriggerinsert_s

onSC

insteadofinsert

as

declare@cnochar(4)

begin

select@cno=cnofrominserted

if@cno=any(selectcnofromC)

begin

select记录插入成功

insertintoSC

select*frominserted

end

else

select不能插入记录這样的记录

end

return

验证:

insertintoSC

values(95007,5,99);

為S表创立一种名為dele_s1的DELETE触发器,该触发器的作用是严禁删除S表中的记录。触发器创立成功之後,删除S表中的记录,验证触发器与否正常工作。(5分)

createtriggerdele_s1

onS

insteadofdelete

as

begin

rollback

print严禁删除S表中的记录

end

验证:

delete

fromS

wheresno=95007

為S表创立一种名為dele_s2的DELETE触发器,该触发器的作用是删除S表中的记录時删除SC表中该學生的选課纪录。触发器创立成功之後,删除S表中的记录删除S表中的记录,验证触发器与否正常工作(SC表中的数据被正常删除)。(5分)

createtriggerdele_s2onS

afterdelete

as

declare@snonchar(9)

begin

select@sno=snofromdeleted

deleteSC

wheresno=@sno

end

删除验证:

deleteS

wheresno=95007

為S表创立一种名為update_s的UPDATE触发器,该触发器的作用是严禁更新S表中“sdept”字段的内容。触发器创

文档评论(0)

159****1748 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档