ImageVerifierCode 换一换
格式:DOCX , 页数:14 ,大小:1.16MB ,
资源ID:11214595      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/11214595.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(北邮数据库sql实验二报告.docx)为本站会员(b****7)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

北邮数据库sql实验二报告.docx

1、北邮数据库sql实验二报告实验二 SQL Server数据库设计高级内容一、使用查询分析器实现以下查询(1) 统计有学生选修的课程门数。 SELECT COUNT(DISTINCT CourseNo) CourseTotal FROM sc (2) 求选课在四门以上的学生所选课程的平均成绩(不统计不及格的课程)。最后按降序列出平均成绩名次名单来。 SELECT sno,AVG(score) avg_grade FROM sc WHERE score = 60 GROUP BY sno HAVING count(courseno)=4 ORDER BY avg_grade DESC (3) 统计

2、每门指选课程的学生选修人数(超过10人的课程才统计),要求输出课程号,课程名和选修人数,查询结果按人数降序排列,若人数相同,按课程号升序排列。 SELECT courseno,COUNT(sno) snum FROM sc GROUP BY courseno HAVING COUNT(sno)=10 ORDER BY COUNT(sno) DESC, courseno ASC (4) 检索所学课程包含了s3所选所有课程的学生姓名。 SELECT DISTINCT sno FROM sc sc_1 WHERE NOT EXISTS( SELECT * FROM sc sc_2 WHERE sno

3、=200815128 AND NOT EXISTS( SELECT * FROM sc sc_3 WHERE sc_3.sno = sc_1.sno AND sc_3.courseno = sc_2.courseno ) ) 注:上述查询中所用的课程号和学号的值,可以根据自己表中的数据作修改;为了验证查询的正确,可能还需要输入或修改表中的示例数据;二、 实现数据完整性(1) 定义check约束check约束用来限制用户输入的某一列数据;例如:成绩输入的值应该限制为0-100之间的数值alter table sc add constraint ck_sc CHECK( score = 0 AND

4、 score = 100)删除约束 alter table sc drop constraint ck_sc(2) 定义规则(rule)rule也可以用来限制用户输入的数据,但它只定义一次,可以绑定到一列或多列;例如:创建一个规则,保证只允许输入指定的课程类别:“必修”,“任选”,“指选”,然后把此规则绑定到“课程类别”;创建规则 create rule coursetype as coursetype in (必修,任选,指选)绑定规则 sp_bindrule coursetype,Course.Category解除绑定 sp_unbindrule Course.Category删除规则 d

5、rop rule coursetype (3) 创建以上约束后,练习修改约束的操作(包括增加,修改和删除以上约束);三、 在企业管理器中利用数据导入,导出向导练习数据的导入导出;把每个表中的数据导出到指定的文本文件中;导出的文件四、 在企业管理器中,练习数据库的完整性备份和恢复;备份文件;五、 存储过程和触发器的实现1 存储过程(1)使用CREATE PROCEDURE命令创建存储过程例1:定义存储过程,实现学生学号,姓名,课程名和成绩的查询;CREATE PROC student_queryAS SELECT student.sno,sname,coursename,score FROM s

6、tudent,course,sc WHERE student.sno = sc.sno and course.courseno = sc.coursenoEXEC student_query例2:定义存储过程,实现按某人指定课程的成绩;CREATE PROC student_query1 snamevarchar(20), cnamevarchar(30)AS SELECT student.sno,sname,coursename,score FROM student,course,sc WHERE student.sno = sc.sno AND course.courseno = sc.c

7、ourseno AND sname = sname AND coursename = cnameexec student_query1 李刚,数据库技术例3:定义存储过程,在查询某人所选修的课程和成绩,指定姓名时,可以只给出姓;CREATE PROC student_query2 snamevarchar(20) = %AS SELECT student.sno,sname,coursename,score FROM student,course,sc WHERE student.sno = sc.sno AND course.courseno = sc.courseno andsname L

8、IKE snameEXEC student_query2 张%例4:定义存储过程,计算并查看指定学生的总学分alter table course alter column Credits floatCREATE PROC student_query3 snamevarchar(20), total integer OUTPUTAS SELECT total = SUM(Credits) FROM student,course,sc WHERE student.sno = sc.sno AND course.courseno = sc.courseno andsname = snamedecla

9、re total floatexec student_query3 李刚,total OUTPUTselect totalTotalCredits(2)使用EXEC命令执行上述存储过程2触发器(1)使用CREATE TRIGGER命令对学生选课信息表创建插入触发器,实现的功能是:当向学生选课信息表中插入一记录时,检查该记录的学号在学生表中是否存在,检查该记录的课程编号是否在课程表中存在,若有一项为否,则提示“违背数据的一致性”错误信息,并且不允许插入。CREATE TRIGGER check_ins ON dbo.SC FOR INSERT ASif not exists( select *

10、from student,course,inserted wherestudent.sno=inserted.sno and course.courseno=inserted.courseno) RAISERROR (违背数据的一致性,16,1)else begin PRINT 数据已插入 endinsert into sc values(200815128,C4,80)(2)使用CREATE TRIGGER 命令对学生信息表创建删除触发器,实现的功能是:当在学生信息表中删除一条记录时,同时删除学生选课信息表中相应的记录。 CREATE TRIGGER del_trigger ON dbo.Student FOR DELETE AS delete from sc where sc.sno in (select sno from deleted) (3)向课程信息表插入数据,在学生信息表删除记录,验证触发器的执行;SC表新增加的记录在Student表中删除2011210041学生的信息后,可见SC表中也删除了其选课信息六、 在实验老师验收所有的项目后,删除所创建的数据库, 把实验中生成的脚本文件,数据导出的文本文件以及数据库的备份文件复制到U盘中,并通过验收。

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1