sql数据库实例(数据库学习入门~).doc
《sql数据库实例(数据库学习入门~).doc》由会员分享,可在线阅读,更多相关《sql数据库实例(数据库学习入门~).doc(20页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。
1、-_数据库设计及应用实验一、实验内容创建数据库:包括 Student, Course, Enroll, Statistics 表,表的结构如下:Student (sno, sname, age, sex)Course (cno, cname, credit)Enroll (sno, cno, grade)Statistics (sno, cNumber, creditSum)说明:cNumber 是 sno 学生选修课程的数目;creditSum 是 sno 学生选修课程的总学分。1、设计并在 MS SQL Server 2000 中创建以上表结构,并设置完整性约束。2、查询所有选修课程的学生
2、的基本信息、课程信息及相应的考试成绩。3、查询所有学生的信息,若已选课就还要给出选修课程的信息及考试成绩。4、查询所有课程的信息,若课程有学生选修就还要给出选修课程的学生的信息及考试成绩。5、查询选修名为“数据库”的课程的考试成绩最高的学生的信息。6、对 Student 的 age 创建规则,满足 18age25,并给出验证实例及验证结果。-_7、创建触发器:当学生选修一门新的课程后,Statistics 表的cNumber 自动加 1,且 creditNumber 自动增加新选课程的学分。8、创建视图:找出所有已修学分超过 6、所修课程平均分不低于 60 的学生的基本信息、以及所修课程的平均
3、分。按照平均分排序,若平均分相同按照学号排序。9、 对于如下一组数据操作:(1)select * from course;(2)select * from course where cname=数据库(3)select * from course where credit=3(4)select * from course where credit2 and credit=18 and age=60 and creditSum6 order by avg_grade,d.snoselect *from Transcript 执行结果如图 13 所示。执行结果分析:执行结果分析:列出的学生都按平均
4、成绩大小从低到高排列且平均分都大于 60.当平均分相同时,表中冉从宝和杨璐就按照学号大小从小低到高排列。9、对照对 Course 表的 credit 属性创建索引和去掉 Course 表的 credit属性上创建的索引查询的执行计划。对 Course 表的 credit 属性创建索引为: create index credit_index on Course(credit)(1) 对比有无索引 credit_index 情形下, “select * from Course”的查询的 执行计划分别如图 14、图 15 所示。图 13 Transcript 视图表-_结果分析:结果分析:由图 14
5、,、图 15 可知当查询是针对整个表进行,创建索引和不创建 索引,查询的执行计划都是一样的。(2)对比有无索引 credit_index 情形下, “select * from course where cname= 数据库”的查询的执行计划分别如图 16、图 17 所示。图 14 有索引情形下的查询 的执行计划图 15 无索引情形下的查询 的执行计划-_结果分析:结果分析:由图 16,、图 17 可知当条件针对的字段不是创建了索引的那个字段 时,索引是无效的。有索引和无索引,查询的执行计划都是一样的。(3)对比有无索引 credit_index 情形下, “select * from cou
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- sql 数据库 实例 学习 入门
限制150内