- 1、本文档共5页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
《SQLServer数据库》数据库存储过程触发器的创建于管理实验报告
北 华 航 天 工 业 学 院
《数据库系统管理》
实验报告
报 告 题 目 :
存储过程、触发器的创建于管理
所 在 系 部 : 计算机科学与工程系
所 在 专 业 : 网络工程专业
学 号 :
姓 名 :
教 师 姓 名 :
完 成 时 间 : 2011 年 10 月 19 日
北华航天工业学院教务处制
存储过程、触发器的创建与管理
实验目的
掌握存储过程的概念、优点、特点及用途;
掌握创建、执行、查看、修改和删除存储过程的方法;
了解触发器和一般存储过程的区别、概念及优点;
掌握创建、查看、修改和删除触发器的方法。
实验内容
(一)附加上次实验所创建的数据库“db_Library”,并回顾该数据库的数据表信息。
(二)练习创建和管理存储过程
1、使用管理控制台创建一个名为“计算机系借阅信息_PROC”的无参存储过程,要求显示计算机系读者2011-1-1以后借阅的图书信息,包括“读者姓名”、“图书编号”和“借阅日期”三个字段,并执行该存储过程,查看显示结果。
2、使用T-SQL语句创建一个名为“读者借阅信息_PROC”的带参数的存储过程,要求根据输入的读者的编号显示读者的所有借阅信息,包括“读者编号”、“姓名”、“系部”、“图书编号”、“图书名称”和“借阅日期”等字段,并执行该存储过程,查看显示结果。
create proc 读者借阅信息_PROC1
@dzbh char(10)
as
begin
select tb_reader.读者编号,姓名,系部,
tb_book.图书编号,书名,借阅日期
from tb_book,tb_reader,tb_borrow
where tb_book.图书编号=tb_borrow.图书编号
and tb_reader.读者编号=tb_borrow.读者编号
and tb_reader.读者编号=@dzbh
end
--
declare @srcs char(10),@fhzt int
set @srcs=R10009
exec @fhzt=读者借阅信息_PROC1 @srcs
print 执行状态值为+cast(@fhzt as varchar(10))
使用T-SQL语句创建一个名为“图书借阅信息_PROC”的带参数的存储过程,要求根据输入的图书编号计算该图书的借阅数量,并根据程序执行结果返回不同的值,执行成功返回0,不成功返回错误号,并执行该存储过程,输出图书编号、借阅数量和程序结果返回值。
create proc 图书借阅信息_PROC1
@tsbh char(10),@jysl int output
as
begin
declare @ztz int
set @ztz=0
select @jysl=count(distinct 读者编号)
from tb_borrow where 图书编号=@tsbh
if @@error0
set @ztz=@@error
return @ztz
end
--
declare @sccs int,@fhz int,@srcs char(10)
set @srcs=10003
exec @fhz=图书借阅信息_PROC1 @srcs,@sccs output
select @srcs,@sccs,@fhz
使用管理控制台查看“读者借阅信息_PROC”存储过程的定义信息和依赖的对象。
使用系统存储过程查看“计算机系借阅信息_PROC”存储过程的定义信息和依赖的对象。
sp_helptext
sp_depends
使用T-SQL语句创建一个名为“删除读者信息_PROC”的存储过程,要求根据所提供的读者编号,删除该编号所对应的读者,如果不存在此编号的读者,则显示“该编号的读者不存在!”。创建完成之后,执行上述存储过程,观察执行结果。
create proc 删除读者信息_PROC1
@dzbh char(10)
as
begin
if exists(select * from tb_reader
where 读者编号=@dzbh)
begin
delete from tb_borrow where 读者编号=@dzbh
delete from tb_reader where 读者编号=@dzbh
end
else
print 该编号的读者不存在!
end
exec 删除读者信息_PROC1 R10010
文档评论(0)