11计科张小华数据库实验十一存储过程与触发器..docVIP

  • 25
  • 0
  • 约2.94千字
  • 约 9页
  • 2016-12-27 发布于重庆
  • 举报

11计科张小华数据库实验十一存储过程与触发器..doc

西 安 思 源 学 院 数据库实验报告 实验名称:存储过程与触发器 班 级:11计算机科学与技术 学 号:111102020104 姓 名:张小华 指导教师:王英强 实验时间:2013年5月 成 绩: 实验11存储过程与触发器 实验目的 (1)掌握创建存储过程和触发器的方法和步骤。 (2)掌握存储过程和触发器的使用方法。 2.实验准备 了解存储过程和触发器的基本概念和类型。 了解创建存储过程和触发器的SQL语句的基本用法。 了解查看、执行、修改和删除存储过程的 SQL语句的用法。 了解查看、修改和删除触发器的SQL语句的用法。 3.实验内容 (1)使用存储过程: ①使用student数据库中的“学生”、“课程注册”、“课程”、表创建一个不带参数的存储过程(kcxd)。该存储过程的功能是:显示所有学生的学号、选修的课程名和课程成绩。 .执行kcxd存储过程,显示所有学生的学号、选修课程和课程成绩。 源代码: use student go create proc kcxd as select 学生.姓名,学生.学号,课程名,成绩 from 学生,课程注册,课程 where 学生.学号=课程注册.学号and 课程.课程号=课程注册.课程号 go 执行kcxd代码: use student go exec kcxd go ②使用student数据库中的“学生”、“课程注册”、“课程”、表创建 一个不带参数的存储过程(cjxc)。该存储过程的功能是:当任意给定 一个学生的姓名时,将显示该学生的学号,选修的课程名和课程成绩, 若没有给定学生的姓名,则显示所有学生的学号、选修的课程名和课程成绩。 .执行cjcx存储过程,查询“周红梅”的学号、选修课程和课程成绩。 .执行cjcx存储过程,不指定参数值。 .使用系统存储过程sp_helptxt查看存储过程cjcx的文本信息。 源代码: use student go create proc cjkx @student_name char(10) as if @student_name= begin select 学生.姓名,学生.学号,课程名,成绩 from 学生,课程注册,课程 where 学生.学号=课程注册.学号and 课程.课程号=课程注册.课程号 end else begin select 学生.姓名,学生.学号,课程名,成绩 from 学生,课程注册,课程 where 学生.学号=课程注册.学号and 课程.课程号=课程注册.课程号 and 学生.姓名=@student_name end go 执行cjcx存储过程,查询“周红梅”的学号、选修课程和课程成绩 代码如下: use student go exec cjkx 周红瑜 go 执行cjcx存储过程,不指定参数值 代码如下: use student go exec cjkx go 使用系统存储过程sp_helptxt查看存储过程cjcx的文本信息 代码如下: use student go exec sp_helptext cjkx go ③使用student数据库中的“教师”、“教师任课”表创建一个带参数的存储过程(jsrk)。该存储过程的功能是:当任意输入一个教师的姓名时,将由输出参数返回该教师的任课数量。 . 执行jsrk存储过程,查询“张斌”的任课数。 创建存储过程jsrk: use student go create proc jsrk @js_name varchar(20) as select count(课程号)as 该教师任课数量 from 教师,教师任课 where 教师.姓名=@js_name and 教师.教师编号=教师任课.教师编号 go 执行jsrk存储过程,查询“张斌”的任课数 代码如下: use student go exec jsrk 张斌 go (2)使用触发器: 在jifei数据库中建立一个名为ins

文档评论(0)

1亿VIP精品文档

相关文档