


下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、广州xx学院数据库实验报告3/ 4成 绩实验日期 2020.5.2学 号 20181x指导教师王x专业班级计算机181姓 名李x实验名称视图、索引与数据库关系(报告内容包括实验目的、实验设备及器材、实验内容、实验步骤、实验结果、实验小结等)一、实验目的要求学生掌握 SQL server中的视图创建、查看、修改、和删除的方法;掌握索引的创 建和删除的方法以及数据库关系图白实现方法;加深对视图和 SQL server数据库关系图作 用的理解。二、实验设备及器材Windows平台,SQL server 2012三、实验内容(1)创建、查看、修改和删除视图。(2)创建、删除索引文件。(3)创建数据库关
2、系图。四、实验步骤1 .在数据库EDU彷创建下列视图。在EDUO据库中以学生信息表Student、Course和SC表为基础完成下列视图的创建。(1) 创建计算机系学生基本情况视图V_Computer。CREATEVIEWV_Computer ASSELECT*FROMStudentWHEREio ='D1'D1为计算机系的编号(2) 创建 Student、Course 和 SC表中学生的 sno,sname,tcid,cname,score 创建视图 V_SC_Gcreate view V_SC_G asselect Student . sno, sname SCtcid ,
3、 cname SC scorefrom Student , Course, SC, TC where Student . sno=SC. sno and SC. tcid =TC. tcid and TC. cno=Course. cno with check option ;( 3) 将各系学生人数、平均年龄创建视图V_NUM_AV。 Gcreate view V_NUM_AVG asselect count (sno)人数,avg( YEARGETDAR®- YEARbirthday )平均年龄,dname from Student , Dept where Student .
4、dno=Dept. dno group by dname;( 4) 创建一个反映学生出生年份的视图V_YEAR。create view V_YEAR as select birthday from Student( 5) 将各学生选修课程的门数及平均成绩创建视图V_AVG_S_Gcreate view V_AVG_S_G asselect SC. sno, count ( course . cno) 课程门数, avg(SC. score )平均成绩from Student , SC, Course, TC where student . sno=sc. sno and SC. tcid =T
5、C. tcid and TC. cno=Course. cno group by SC. sno;( 6) 将各门课程的选修人数及平均成绩创建视图V_AVG_C_。 Gcreate view V_AVG_C_G asselect Course . cno, count ( Course. cno) 课程选修人数, avg( SC. score )平均成绩from SC, TC, Course where SC. tcid =TC. tcid and TC. cno=Course. cno group by Course . cno;2 . 利用视图完成下列查询。( 1)查询平均成绩为90 分以
6、上的学生的学号、姓名和成绩。use EDUCselect V_SC_G sno, V_SC_Gsname V_AVG_S二邰均成绩from V_SC_G, V_AVG_S_Gwhere V_SC_G. sno=V_AVG_S_.Gsno and 平均成绩>90( 2)查询各科成绩均高于平均成绩的学生的学号、姓名、课程、和成绩。use EDUCselect sno , sname, cname, scorefrom V_SC_GGROUPBYsno , sname, cname, score having score >avg(score ) ( 3)按系统计各系平均成绩在80 分以
7、上的人数,结果按降序排列。use EDUCselect dno , count (avg( score ) Num from V_SC_G, Studentwhere Student . sno=V_SC_G. sno GROUPBYdno having avg( score )>80 order by Num desc3 .基于EDUO据库完成下面的操作。( 1)对教师表Teacher 中的教师号tno 创建聚簇索引,并按降序排列。use EDUC create index IND_tno on Teacher ( tno desc)(2)对学生成绩信息表SC先按上课编号tcid升序排
8、序,再按学生成绩score降序排列创建索引。use EDUCcreate index IND_tcid_score on SC ( tcid asc, score desc) ( 3)对课程信息表Course 中的课程编号创建唯一索引,并按升序排列。use EDUCcreate unique index IND_cno on Course (cno asc)4 .在数据库TSGL中创建下列视图。(1)创建视图 Read_Borrow_Book,字段为 ReaderID,readers.Name,BorrowerDate, BookID,books.Name, 满足条件BorrowedQuant
9、ity>3 。create view Read_Borrow_Book asselect readers . ReaderID , readers . Name, borrowinf . BorrowedDate , books. BookID from readers , books, borrowinf where BorrowedQuantity >3( 2)利用 books 表创建字段为BookID,Name,Author,Publisher,PublisherDate 的视图,条件满足“出版社”=“清华大学出版社”,并且 Price>30 。create view IND_Book asselect BookID , Name, Author , Publisher , PublisherDate from bookswhere Publisher =' 清华大学出版社' and Price >30( 3)创建视图borrow_inf, 字段为 RedaerID,Name,RederType,BorrowedDate ,条件为ReturnDate 为空。 create view borrow_inf asselect readers . ReaderID , Name, R
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
评论
0/150
提交评论