资源描述:
《数据库上机试验报告dk》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、数据库系统原理――上机实验报告姓名邓凯学号:08055140班级:计算机86联系方式:15829883687一、建立数据库MYDB并导入数据在这里由于题目要求中已经给出了一部分数据,于是可以采取将数据拷贝到excel中然后直接往数据库中导入,执行结果如下:三个数据表的数据模式以及初始数据内容:JSJ86_C140(C#,CNAME,PERIOD,CREDIT,TEACHER)JSJ86_S140(S#,SNAME,SEX,BDATE,HEIGHT,DORM)JSJ86_SC140(S#,C#,GRADE)其中S#、C#均为
2、外键二、执行数据库查询语句1.在上述基本表上完成以下查询:(1)查询选修了课程“CS-02”的女生姓名。(2)查询未选修课程“EE-02”的男生学号、成绩。(3)查询身高不低于“王涛”同学的男生学号、姓名及年龄。(4)查询学生姓名及其所选修课程的课程号、学分和成绩。(5)查询选修课程“CS-01”的学生中成绩第二高的学生学号。(6)查询平均成绩超过“王涛“同学的学生学号、姓名和平均成绩,并按学号进行降序排列。(7)查询选修了3门以上课程(包括3门)的学生中平均成绩最高的同学学号及姓名。解:(1)SELECTSNAMEFRO
3、MJSJ86_S140WHERE(S#IN(SELECTS#FROMJSJ86_SC140WHEREC#='CS-02'))AND(SEX='女')(2)SELECTJSJ86_SC140.S#,JSJ86_SC140.GRADEFROMJSJ86_SC140INNERJOINJSJ86_S140ONJSJ86_SC140.S#=JSJ86_S140.S#WHERE(JSJ86_SC140.S#NOTIN(SELECTS#FROMJSJ86_SC140WHEREC#='EE-02'))AND(JSJ86_S140.SEX=
4、'男')(3)SELECTS#,SNAME,DATEDIFF(YEAR,BDATE,GETDATE())ASExpr1FROMJSJ86_S140WHERE(SEX='男')AND(HEIGHT>=ANY(SELECTHEIGHTFROMJSJ86_S140WHERESNAME='王涛'))(4)SELECTDISTINCTJSJ86_S140.SNAME,JSJ86_SC140.C#,JSJ86_C140.CREDIT,JSJ86_SC140.GRADEFROMJSJ86_SC140INNERJOINJSJ86_S140
5、ONJSJ86_SC140.S#=JSJ86_S140.S#INNERJOINJSJ86_C140ONJSJ86_SC140.C#=JSJ86_C140.C#(5)SELECTMAX(S#)ASExpr2,MAX(GRADE)ASExpr1FROMJSJ86_SC140WHERE(GRADE<>(SELECTMAX(GRADE)FROMJSJ86_SC140))(6)1.创建视图CREATEVIEWS_AG(S#,AVG)ASSELECTS#,AVG(GRADE)FROMJSJ86_SC140GROUPBYS#2.查看视图
6、SELECT*FROMS_AG3.执行查询SELECTS_AG.S#,SNAME,AVGFROMJSJ86_S140,S_AGWHEREJSJ86_S140.S#=S_AG.S#ANDAVG>(SELECTAVGFROMS_AGWHERE(S#IN(SELECTDISTINCTS#FROMJSJ86_S140WHERE(SNAME='王涛'))))ORDERBYS_AG.S#DESC(7)1.创建视图CREATEVIEWC_NUM(S#,C_NUM)ASSELECTS#,COUNT(*)FROMJSJ86_SC140GRO
7、UPBYS#2.查看视图3.执行查询SELECTMAX(AVG)FROMS_AGWHERES#IN(SELECTS#FROMC_NUMWHERE(C_NUM>=3))2、分别在JSJ86_S140和JSJ86_C140表中加入记录(‘01032005’,‘刘静’,‘男’,‘1983-12-10’,1.75,‘西14舍312’)及(‘CS03’,“离散数学”,64,4,‘陈建明’)。解:执行第一条插入语句:INSERTINTOJSJ86_S140(S#,SNAME,SEX,BDATE,HEIGHT,DORM)VALUES('
8、01032005','刘静','男','1983-12-10',1.75,'西14舍312')语句执行后JSJ86_S140表中数据:执行第二条插入语句INSERTINTOJSJ86_C140(C#,CNAME,PERIOD,CREDIT,TEACHER)VALUES('CS-03','离散数学',64