版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、精选优质文档-倾情为你奉上上机实验题7相关知识:第14章。目的:通过本实验,掌握使用函数和存储过程的设计和使用方法。实验内容:编写满足如下各功能的程序:(1)在Library数据库中创建一个标量值函数Sum(n),求1+2+n之和。并用相关数据进行测试。(2)在Library数据库中创建一个内联表值函数nbook,返回指定系的学号、姓名、班号、所借图书名和借书日期。并用相关数据进行测试。(3)在Library数据库中创建一个多语句表值函数pbook,返回系名和该系所有学生所借图书的平均价格。并用相关数据进行测试。(4)设计一个存储过程,查询每种图书品种的数目。并用相关数据进行测试。(5)设计一
2、个存储过程,采用模糊查询方式查找借阅指定书名的学生,输出学号、姓名、班号和书名。并用相关数据进行测试。设计过程:(1)对应的参考程序如下:USE LibraryGOIF EXISTS(SELECT * FROM sysobjects WHERE name='Sum' AND type='FN') -如果存在这样的函数则删除之 DROP FUNCTION SumGOCREATE FUNCTION Sum(n int) -输入参数RETURNS intASBEGIN DECLARE s int,i int SET s=0 SET i=1 WHILE i<=n
3、BEGIN SET s=s+i SET i=i+1 END RETURN(s)ENDGOPRINT '1+2+.+60='+CAST(dbo.Sum(60) AS char(10)GO(2)对应的参考程序如下:USE LibraryGOIF EXISTS(SELECT * FROM sysobjects -如果存在这样的函数则删除之 WHERE name='nbook' AND (type='IF' OR type ='TF') DROP FUNCTION nbookGOCREATE FUNCTION nbook(dname ch
4、ar(16)-建立函数nbook RETURNS TABLE-返回表,没有指定表结构,这是内联表值函数的特征ASRETURN ( SELECT s.学号,s.姓名,s.班号,b.图书名,bor.借书日期 FROM student s,depart sc,borrow bor,book b WHERE s.班号=sc.班号 AND s.学号=bor.学号 AND b.图书编号=bor.图书编号 AND sc.系名=dname)GOSELECT * FROM nbook('计算机系')ORDER BY 学号GO(3)对应的参考程序如下:USE LibraryGOIF EXISTS(
5、SELECT * FROM sysobjects -如果存在这样的函数则删除之 WHERE name='pbook' AND (type='IF' OR type ='TF') DROP FUNCTION pbookGOCREATE FUNCTION pbook() -建立函数pbook RETURNS st TABLE ( 系名 char(16), 平均价格 decimal(4,1) )AS BEGIN INSERT st-向st中插入满足条件的记录 SELECT sc.系名 AS '系名',AVG(b.定价) AS '
6、平均价格' FROM depart sc,student s,book b,borrow bor WHERE s.班号=sc.班号 AND s.学号=bor.学号 AND b.图书编号=bor.图书编号 GROUP BY sc.系名 RETURN ENDGOSELECT * FROM pbook()GO(4)对应的参考程序如下:USE LibraryGO-若存在存储过程proc1,则删除之IF EXISTS(SELECT * FROM sysobjects WHERE name='proc1' AND type='P') DROP PROCEDURE p
7、roc1GO-创建存储过程proc1CREATE PROCEDURE proc1AS SELECT 图书名 AS '书名',COUNT(*) AS '数目' FROM book GROUP BY 图书名GOEXEC proc1(5)对应的参考程序如下:USE LibraryGO-若存在存储过程proc2,则删除之IF EXISTS(SELECT * FROM sysobjects WHERE name='proc2' AND type='P') DROP PROCEDURE proc2GO-创建存储过程proc2CREATE PR
8、OCEDURE proc2(bn char(16)AS DECLARE pt char(16) SET pt='%'+RTRIM(bn)+'%' SELECT s.学号,s.姓名,s.班号,b.图书名 FROM student s,book b,borrow bor WHERE s.学号=bor.学号 AND b.图书编号=bor.图书编号 AND b.图书名 LIKE ptORDER BY s.班号GOEXEC proc2 '数'上机实验题8相关知识:第15章。目的:通过本实验,掌握触发器的设计和使用方法。实验内容:编写满足如下各功能的程序:(
9、1)在borrow上建立一个触发器,完成如下功能:如果读者借阅的书名是“网络工程”,就将该借书记录保存在borrow1表中(borrow1表结构同borrow相同)。(2)在borrow上建立一个触发器,完成如下功能:当删除borrow表中任何记录时,将该记录保存保存在borrow1表中(borrow1表结构同borrow相同)。(3)删除前面创建的触发器。设计过程:(1)对应的参考程序如下:USE LibraryGO-若不存在borrow1表,则通过复制创建表borrow1IF NOT EXISTS(SELECT name FROM sysobjects WHERE name='bo
10、rrow1' AND type='U')BEGIN SELECT * INTO borrow1 FROM borrow DELETE borrow1ENDGOCREATE TRIGGER trig1 ON borrowFOR INSERT,UPDATEASIF ROWCOUNT>0 INSERT borrow1 SELECT i.* FROM inserted i,book b WHERE i.图书编号=b.图书编号 AND b.图书名='网络工程'GOINSERT INTO borrow VALUES('11','2009
11、0','2014-4-15')GOSELECT * FROM borrow1GO说明:在本实验完成后,请将borrow表中新插入的记录删除,仍保持数据不变。(2)对应的参考程序如下:USE LibraryGOIF NOT EXISTS(SELECT name FROM sysobjects WHERE name='borrow1' AND type='U')BEGIN SELECT * INTO borrow1 FROM borrow DELETE borrow1ENDGOCREATE TRIGGER trig2 ON borrowFOR
12、 DELETEASIF ROWCOUNT>0 INSERT borrow1 SELECT * FROM deletedGO(3)对应的参考程序如下:USE LibraryGODROP TRIGGER trig1DROP TRIGGER trig2GO上机实验题9相关知识:第16章。目的:通过本实验,掌握使用T-SQL语句进行SQL Server安全管理的方法。实验内容:编写满足如下各功能的程序:(1)创建一个登录账号liblog,其密码为“”。(2)为liblog登录账号在Library数据库中创建一个数据库用户账号liblog。(3)将Library数据库中建表的权限授予libuser
13、数据库用户账号,然后收回该权限。(4)将Library数据库中表student上的INSERT、UPDATE和DELETE权限授予libuser数据库用户账号,然后收回该权限。(5)删除前面创建的登录账号liblog和数据库用户账号libuser。设计过程:(1)对应的参考程序如下:CREATE LOGIN liblog WITH PASSWORD=''GO(2)对应的参考程序如下:USE LibraryCREATE USER libuser FOR LOGIN liblogGO(3)对应的参考程序如下:USE LibraryGOGRANT CREATE TABLE TO libuserGOREVOKE CREATE TABLE FROM l
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 哈药集团股份有限公司2026届春季校园招聘备考题库附答案详解(培优a卷)
- 2026北京首华物业管理有限公司招聘2人备考题库含完整答案详解【考点梳理】
- 统考版2026届高考英语一轮复习第三部分 理清常用句式 第四讲 特殊句式 学案(含解析)
- 2026浙江杭州市西湖区云浦幼儿园招聘幼儿教师备考题库(非事业)及参考答案详解【b卷】
- 2026国家统计局拉萨调查队招聘2人备考题库附完整答案详解(夺冠系列)
- 2026贵州安顺关岭自治县民族中等职业学校招聘社会培训外聘人员备考题库及答案详解【夺冠系列】
- 农业种植质量保障承诺书(6篇)
- 改进资金使用效率承诺书(8篇)
- 2026广东深圳市宝安区教科院实验幼儿园招聘公办幼儿园短期主班教师1人备考题库【典优】附答案详解
- 2026春季中国工商银行黑龙江省分行校园招聘178人备考题库参考答案详解
- (完整)CRH380A动车组轮对检修流程及改进方案
- 四川省省属卫生事业单位公开招聘卫生专业技术岗位人员公共科目笔试大纲
- 船舶液压系统常见故障分析及解决方案
- 2023年中级注册安全工程师《安全生产专业实务(建筑施工安全)》真题及答案
- THSPP 0010-2023 欧标茶生产茶园栽培技术规程
- 危化品考试题库及答案参考
- 中考动点问题专项训练
- 1213 日本当代建筑的坡屋顶的知识
- 情感性精神障碍患者的护理
- GB/T 33172-2016资产管理 综述、原则和术语
- 金融企业会计,银行企业会计课件第五章()
评论
0/150
提交评论