网站大量收购闲置独家精品文档,联系QQ:2885784924

数据库第四次实验报告.doc

  1. 1、本文档共9页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
南昌航空大学实验报告 二0一 年 月 日 课程名称: 数据库概论 实验名称: 存储过程及触发器 班级: 姓名: 同组人: 指导教师评定: 签名: 实验参考代码及结果 存储过程: 创建存储过程 9.11 CREATE PROCEDURE Select_S AS SELECT * FROM S WHERE sex=女 GO Execute Select_S 9.12 CREATE PROCEDURE InsRecToS(@sno char(5),@sn varchar(8),@sex char(2)=男,@age int,@dept varchar(20)) AS INSERT INTO S VALUES(@sno,@sn,@sex,@age,@dept) GO Execute InsRecToS @sno=S8,@sn=罗兵,@age=18,@dept=信息 执行前: 执行后: 9.13 CREATE PROCEDURE Query_S(@Sno char(5),@SN VARCHAR(8) OUTPUT,@Age SMALLINT OUTPUT) AS SELECT @sn=sn,@age=age FROM S WHERE Sno=@Sno (2)执行存储过程 Declare @SN VARCHAR(8),@AGE SMALLINT execute Query_S 98010,@SN OUTPUT,@AGE OUTPUT SELECT @SN,@AGE (3)查看和修改存储过程 9.14 ALTER PROCEDURE[dbo].[InsRecTos] (@sno char(5),@sn varchar(8),@sex char(2)=女,@age smallint,@dept varchar(20)) AS INSERT INTO S VALUES(@sno,@sn,@sex,@age,@dept) (4)查看、重命名和删除存储过程 9.15 exec sp_helptext Select_S 9.16 sp_rename Select_S,Select_Student 执行后: 9.17 DROP PROCEDURE Select_Student 执行后: (5)在DingBao数据库中创建存储过程C_P_Proc,实现参数化查询顾客订阅信息,查询参数为顾客姓名,要求能查询出参数指定顾客的顾客编号、顾客名、订阅报纸名及订阅报纸份数等信息。 CREATE PROCEDURE C_P_Proc(@ccna varchar(10),@cno char(4) OUTPUT,@cna varchar(10) OUTPUT,@pna varchar(20) OUTPUT,@num int OUTPUT) AS SELECT @cna=cna,@cno=cp.cno,@pna=pna,@num=num FROM cp,customer,paper WHERE customer.cno=cp.cno AND paper.pno=cp.pno AND cna=@ccna; (6)执行存储过程C_P_Proc,实现对“李涛”等不同顾客的订阅信息的查询。 Declare @cno char(4),@cna varchar(10),@pna varchar(20) ,@num int execute C_P_Proc 李涛,@cno OUTPUT,@cna OUTPUT,@pna OUTPUT,@num OUTPUT SELECT @cno,@cna,@pna,@num (7)删除储过程C_P_Proc DROP PROCEDURE C_P_Proc 执行前: 执行后: 触发器: 创建触发器 10.19 CREATE TRIGGER TR_S_Age_update on S for update as declare @iAge int; select @iAge=age from inserted if @iAge8 or @iAge45 begin raiserror(学生年龄应该大于等于,并小于等于,16,1) rollback transaction end 执行: UPDATE s SET age=48 WHERE sno=98010 10.20 CREATE TRIGGER Change_S_Sel

文档评论(0)

anma + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档