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

存储过程和触发器(数据库实验5).doc

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

数据库基础与实践实验报告 实验五 存储过程和触发器 班级:惠普测试142 学号:1408090213 姓名:闫伟明 日期:2016-11-14 1 实验目的: 掌握SQL进行存储过程创建和调用的方法; 掌握SQL进行触发器定义的方法,理解触发器的工作原理; 掌握触发器禁用和重新启用的方法。 2 实验平台: 操作系统:Windows xp。 实验环境:SQL Server 2000以上版本。 3 实验内容与步骤 利用实验一创建的sch_id数据库完成下列实验内容。 创建存储过程JSXX_PROC,调用该存储过程时可显示各任课教师姓名及其所教课程名称。 存储过程定义代码: CREATE PROCEDURE JSXX_PROC AS SELECT tn 教师姓名,cn 所教课程 FROM T,TC,C WHERE T.tno=TC.tno AND TC.cno=C.cno 存储过程执行语句与执行结果截图: EXECUTE JSXX_PROC 创建存储过程XM_PROC,该存储过程可根据输入参数(学生姓名)查询并显示该学生的学号、所学课程名称和成绩;如果没有该姓名学生,则提示“无该姓名的同学”。 存储过程定义代码: CREATE PROCEDURE XM_PROC @sname VARCHAR(100) AS BEGIN IF EXISTS(SELECT NULL FROM S WHERE sn=@sname) SELECT S.sno 学号,cn 课程,score 成绩 FROM S,SC,C WHERE SC.cno=C.cno AND SC.sno=S.sno AND S.sn=@sname ELSE PRINT 无该姓名的同学。 END 运行截图: 创建存储过程XBNL_PROC,该存储过程可根据输入参数(专业名词,默认值为计算机专业),统计并显示该专业各年龄段男、女生人数。如果没有该专业,则显示“无此专业”。 存储过程定义代码: CREATE PROCEDURE XBNL_PROC @departName VARCHAR(30)=计算机, @begin INT, @end INT AS DECLARE @numOfBoys INT DECLARE @numOfGirls INT DECLARE @d# VARCHAR(3) DECLARE @result VARCHAR(50) BEGIN SELECT @d# = dno FROM D WHERE dn=@departName IF @d# IS NOT NULL BEGIN SELECT @numOfBoys = COUNT(sno) FROM S WHERE age BETWEEN @begin AND @end AND dno=@d# AND sex=男 SELECT @numOfGirls = COUNT(sno) FROM S WHERE age BETWEEN @begin AND @end AND dno=@d# AND sex=女 SET @result = @departName+专业年龄在+ CAST(@begin AS VARCHAR(3))+-+ CAST(@end AS VARCHAR(3))+之间的男生有+ CAST(@numOfBoys AS VARCHAR(3))+人,+女生有+ CAST(@numOfGirls AS VARCHAR(3))+人 END ELSE SET @result=无此专业。 PRINT @result END 执行结果: 执行XM_PROC存储过程,查询“贾慧”同学的学号、所学课程名称和成绩。 存储过程调用语句及其执行结果截图: EXEC XM_PROC 贾慧 如果学生表中无“贾慧”同学,则另查询一位学生表中出现过的学生姓名;如果学生表中有“贾慧”同学,则另查询一位学生表中没有的学生姓名。 存储过程调用语句及其执行结果截图: EXEC XM_PROC 张明 执行XBNL_PROC存储过程,查询计算机专业各年龄的男、女生人数。(要求计算机专业必须有至少3个年龄段的男女学生) 存储过程调用语句及其执行结果截图: EXEC XBNL_PROC @begin=21,@end=25 --默认:计算机 EXEC XBNL_PROC 计算机,18,25 EXEC XBNL_PROC 计算机,23,25 EXEC XBNL_PROC 计算机,20,21 执行XBNL_PROC存储过程,输入一个专业表中没有的专业。 存储过程调用语句及其

您可能关注的文档

文档评论(0)

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

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

1亿VIP精品文档

相关文档