文档详情

SQL实验7:使用存储过程.doc

发布:2017-12-16约3.89千字共4页下载文档
文本预览下载声明
大学学生实验报告书 实验名称 实验七:使用存储过程 课程名称 数据库原理与设计 成绩 学院(系) 软件学院 专业 计算机软件工程 班级 学生姓名 学号 实验地点 实验日期 实验目的: 掌握存储过程的使用方法 实验内容 按要求完成给出的下列题目,要求写出相应数据库的脚本语句。(要求写出存储过程的创建和执行语句。) 创建一个存储过程,能够显示要求礼物包装(Orderdetail表)的订单的号码和附言。执行相应的存储过程。 CREATE PROCEDURE proc1 AS BEGIN select cOrderNo,vMessage from Orderdetail END exec proc1 创建一个存储过程,接收国家的ID和名称,并将其插入到Country表中。执行该过程。 CREATE PROCEDURE proc3 (@x char(3)=050,@y char(25)=aa) AS BEGIN insert into country values (@x,@y) END exec proc3 创建一个存储过程,接收国家的ID,在Shopper表,Recipient表和ShippingRate表中查找该国家是否被参照引用,如果该国家值没有被引用,则删除相应的国家记录。执行该过程。 CREATE PROCEDURE proc4 (@z char(3)) AS begin if (not exists (select * from Shopper where Shopper.cCountryId=@z) or not exists (select * from Recipient where Recipient.cCountryId=@z) or not exists (select *from ShippingRate where ShippingRate.cCountryId=@z)) delete from Country where Country.cCountryId=@z End exec proc4 050 创建一个存储过程,该存储过程接收玩具的ID,显示相应的玩具的名称和价格。执行过程。 CREATE PROCEDURE proc5 (@a char(6)) AS BEGIN select vToyName,mToyRate from Toys where cToyId =@a END exec proc5 000001 创建一个存储过程,能够根据提供的订单号码显示相应的订单信息,如果没有提供订单号码,则打印消息‘No Order No’。执行该过程。 CREATE PROC proc6 (@b char(6)) AS BEGIN IF EXISTS(SELECT * FROM Orders WHERE cOrderNo=@b) BEGIN SELECT * FROM Orders WHERE cOrderNo=@b END ELSE BEGIN PRINT No Order No END END exec proc6 000000 exec proc6 000002 创建存储过程,接收姓和名,在SHOPPER表中查找相应的订购者详细信息。 CREATE PROC proc7 (@c char(20),@d char(20) ) AS BEGIN select * from dbo.Shopper where vFirstName=@c and vLastName=@d END exec proc7 betty,williams 创建存储过程,对于接收的订单号,如果该订单订购的总花费在60元以上,则打印消息并返回值0,否则打印相应消息并返回值1。 create PROC proc8 (@e char(6)) AS BEGIN IF (SELECT mTotalCost FROM Orders WHERE cOrderNo=@e )60 BEGIN SELECT * FROM Orders WHERE cOrderNo=@e RETURN 0 END ELSE BEGIN PRINT No more than 60 RETURN 1 END END exec proc8 000002 exec proc8 000007 创建存储过程,能够接收玩具ID,并按下列格式打印出该玩具的名称,描述和价格,并列出订购了该玩具的订单的详细信息,写出相应的所有存储过程。如下所示: The
显示全部
相似文档