- 9
- 0
- 约3.61千字
- 约 8页
- 2022-06-30 发布于上海
- 举报
上海应用技术学院
上海应用技术学院
《数据库原理及应用》课程实验报告
实验名称姓 名
专 业
存储过程应用初步
院系 计算机科学与信
息工程学院
计算机科学与技术
实验序号班 级 指导教师
实验日期学 号
成 绩
一、实验目的和要求
1. 理解存储过程的作用; 2.初步掌握存储过程的创建方法; 3.初步掌握存储过程的执行方法。
这个实验所涉及的内容不属于《数据库原理及应用》课内知识,是扩充知识,主要是为
即将到来的课程设计做部分准备工作。
二、实验预习内容 1.上网查找资料--存-
储过程是数据库中的一个怎样的对象;主要应用在哪些方面;存储过
程的类型等基本知识。 2.创建存储过程的方法,包括有参数和无参数的存储过程。其中可能涉及到变量、系统函数 SQL 控制流语句等内容。
三、实验项目摘要
针对“图书-借阅”涉及的 5 张表,自行设计 3 个存储过程(要有实际意义),执行它们,看结果是否是你所需要的 ;
针对“供应”涉及的 4 张表,设计 3 个存储过程(要有实际意义),执行它们,看结果是否是你所需要的。
说明:设计的存储过程不可以太过简单(如只有一个简单查询),要会设计带参数的存储过程。同学们可以根据自己对知识的掌握情况,自行决定如何设计。
四、实验结果与分析1.
(1)创建(无参数)查询‘文学’类图书中出版时间最早的最早的图书信息的存储过程并执行: 1、书写T-SQL 语句,创建过程一:
CREATE PROCEDURE GUOCHENG_ONE AS /*新建过程一*/
SELECT 图书名,作者,出版社FROM BOOKS ,BOOKCATEGORY
WHERE 出版日期IN (SELECT MIN (出版日期)
FROM BOOKS
WHERE BOOKS .种类编号=BOOKCATEGORY .种类编号
AND 种类名称=文学) /*T-SQL语句*/
GO
II、执行过程一:
EXECUTE GUOCHENG_ONE /*执行该存储过程功能*/ (或者:EXEC GUOCHENG_ONE )
(2)(单个参数)查询:设置一个存储过程 GUOCHENG_TWO ,通过指定可变的读者姓名,显示其所借阅的图书的图书名:
I、先以一个“具体的姓名”书写 T-SQL 语句,检验语法错误;无误后以变量代替“具体的姓名”,进而创建过程二:
SELECT 图书名
FROM BOOKS
WHERE 图书编号IN (SELECT 图书编号
FROM BORROW
WHERE 读者编号IN (SELECT 读者编号
FROM READERS
WHERE 姓名=于志强)) CREATE PROCEDURE GUOCHENG_TWO @NAME varcha(r10)
AS /*新建过程二*/
SELECT 图书名FROM BOOKS
WHERE 图书编号IN (SELECT 图书编号
FROM BORROW
WHERE 读者编号IN (SELECT 读者编号
FROM READERS
WHERE 姓名=@NAME ))
GO
/*过程功能*/
II、执行上述过程,即随意指定读者姓名,查询其借阅图书的图书名:
EXECUTE GUOCHENG_TWO @NAME =李明 /*执行该存储过程功能*/
EXECUTE GUOCHENG_TWO @NAME =李明 /*执行该存储过程功能*/
设置(多个参数)插入一条记录的过程;完成后并执行该过程将:“读者编号:1243;姓名:翟萌;种类编号:2;工作单位:西安交通大学;住址:桃苑小区 3-415;联系电话 登记日期:2014-04-15;性别:男”这些内容添加到到表READERS 中:
I、创建向表READER 插入记录的过程如下: CREATE PROCEDURE GUOCHENG_THREE
@READERS_NUMBER nchar(10),@NAME varcha(r20),@RANGE_NUMBER int,@COMPANY varcha(r50),
@ADD varcha(r100),@TEL varcha(r20),@DATE datetim,e@SEX char(2)
AS /*新建过程三*/
INSERT INTO READERS VALUES (@READERS_NUMBER ,@NAME ,@RANGE_NUMBER ,@COMPANY ,
@ADD ,@TEL ,@DATE ,@SEX )
/*过程功能*/
GO
II、执行该过程,将记录插入到表中: EXECUTE GUOCHENG_THREE
原创力文档

文档评论(0)