数据库 交互式SQL实验报告

上传人:M****1 文档编号:464555950 上传时间:2023-01-28 格式:DOCX 页数:12 大小:85.59KB
返回 下载 相关 举报
数据库 交互式SQL实验报告_第1页
第1页 / 共12页
数据库 交互式SQL实验报告_第2页
第2页 / 共12页
数据库 交互式SQL实验报告_第3页
第3页 / 共12页
数据库 交互式SQL实验报告_第4页
第4页 / 共12页
数据库 交互式SQL实验报告_第5页
第5页 / 共12页
点击查看更多>>
资源描述

《数据库 交互式SQL实验报告》由会员分享,可在线阅读,更多相关《数据库 交互式SQL实验报告(12页珍藏版)》请在金锄头文库上搜索。

1、河南工业大学实验报告课程数据库原理_实验名称实验二交互式SQL院 系:信息科学与工程学院专业班级:计科F1203姓 名:学 号:指导老师:初宜贵日 期:2014.10.11一实验目的1. 熟悉SQL的数据定义、数据操纵功能;2. 掌握利用SQL语句进行多表内/外连接查询和嵌套查询的方法;3. 掌握GROUP BY子句、HAVING子句、ORDER BY子句的用法;4. 掌握(NOT)IN、(NOT)EXISTS等谓词的用法;5. 掌握SUM、AVG、COUNT、MAX、MIN等集合函数的用法;6. 掌握SQL语句中数据更新相关操作;7. 熟悉视图基本操作:定义、查询、更新视图。二.实验内容及要

2、求本实验的表结构如下所示:Student (sno, sname, sex,sage,dept, oldgrade, advisor)Teacher (tno, tname, dept, salary, title)Course (cno, cname, descry, dept, credit)SC (sno, cno, grade)以上数据库表的含义为: Student学生 :sno (学号),sname (学生姓名),sex (性别),sage(年 龄),dept (所在院系),oldgrade (高考成绩),advisor (导师) Teacher教师:tno (教师编号),tname

3、 (教师姓名),dept (所在院系), salary (工资),title (职称) Course课程:cno (课程号),cname (课程名),descry (课程说明), dept (开课院系),credits (学分) SC一成绩:sno (学号),cno (课程号),grade (成绩)根据上述情况完成:1. 使用SQL语句定义上述各表。2. 查询选修了 105323号课程的学生姓名。3. 查询所有的学生及其选课信息。4. 分别利用内连接、左连接和右连接实现上题,观察异同。5. 查询工资不在2000到3000的教师姓名,按工资排序。6. 查询高考平均成绩大于700分的学生所在院系。

4、7. 查询所有院系的平均高考成绩,并按平均成绩排序。8. 查询所有学生的学号及成绩,并计算总成绩。9. 查询每个院系教师的最高工资。10. 把Teacher表中dept字段值为“计算机科学系”的记录修改为“信息科 学与工程学院”。11. 新建一个视图,并依此查询课程编号为205323,成绩大于80分的学生名。12. 为Teacher表增加一个字段,电话(Phone),数据类型char(12),允许空。三.实验过程及结果1.定义上述各表的SQL语句是:CREATE TABLE teacher(tno char(3) primary key,tname char(8),dept varchar(2

5、0),salary int,title char(6);CREATE TABLE student(sno char(7) primary key,sname char(8),sex char(2),dept varchar(20),oldgrade int,tno char(3);CREATE TABLE Course(cno char(6) primary key,cname varchar(20),descry varchar(50),dept varchar(20),credit float);CREATE TABLE SC(sno char(7),cno char(6) ,grade

6、int,primary key (sno,cno);各表创建完成后执行结果如下图1所示:图1引入脚本,将各表数据信息录入,以便完成以下的要求。2.查询选修了 105323号课程的学生姓名,SQL语句是:select sname from student, course where cno = 105323 ;或者:select sname from student, course where cno like 105323 ; 运行结果如图2所示:select snajne from student course where eno = 105323?;11sn:ime1李明2张丽|3胡美美|

7、4侯捷5刘旭|6张隆|7起静81*11,1草草9李祝10孙中堂11刘满12超常发3.4.查询所有的学生及其选课信息,SQL语句是:select student.*,sc.* from student,sc where student.sno = sc.sno;运行结果如图3所示:select. Btndent. *=, sc . *from student,sc where student.sne门结果I壹消息IsnosnamesexdeptoldgradetnasnoenogradeJ_2M7CD1李明管理学院6SSS512D07C311D5321NULL2_2007CD1李明管理学院6SS

8、B512007CD11D532277_3_2007CD1李明管理学院6SS8512DD7CD11D532367_4_2007CK弓长丽女管理学院5fi28522007CD21D53217D_5_24HJ7CK弓长丽女管理学院5fi28522DQ7CK1D532267_6_24HJ7CK弓长丽女管理学院5fi28522DQ7CK1D5323%724HJ7CK胡美美女管理学院712B532DQ7C331D53217924HJ7CK胡美美女管理学院7128532DQ7C331D5322B3图3分别利用内连接、左连接和右连接实现上题,观察异同。内连接:相比等值连接,内链接把目标列中重复的属性列去掉啦。

9、用内连接查询所有的学生及其选课信息,SQL语句是:select student.sno,sname,sex,dept,oldgrade,tno,cno,grade from student,scwhere student.sno = sc.sno;运行结果如图4所示:sc-sno;select student. sncr snair.e, sex, dect. cldgrade r tnc . cnc . grade from student.sc where student.snc_l结果I上消息Ianosname36XdeptIdgradetnoenogrdeJ_2007CD1李明管理学院

10、6SSS511D5321NULL2_2007CD1李明管理学院6SSS511D532277_3_2007CD1李明管理学院6SSS511D532367_4_2007C32张丽女管理学院5fi2S521D532170_5_2flO7C32张丽女管理学院5fi28521D532267J_2flO7C32张丽女管理学院5fi28521D5323%72flO7C33胡美美女管理学院7128531D53217S_8_2flO7C33胡美美女管理学院7128531D5322S3图4左连接:列出左边关系中所有的元祖,运行结果如下图5所示:select student. snc . sndir.e, sex.

11、 dept, cldgrade . tnc . cnc . grade from student left outer join sc n (ptndent.sno = sc.sno);J结果I山消息IanosnamesexdeptoldgrBcletnoenogradeJ_2M7CD1李明管理学院6&BS51105321NULL2M7CD1李明管理学院6&BS5110532277_3_2M7CD1李明管理学院6BBS5110532367_4_2M7CK张丽女管理学院52皈10532170_5_2M7CK张丽女管理学院52皈10532267_6_2M7CK张丽女管理学院52皈105323967

12、2M7CK胡美美女管理学院71235310532179_8_2M7CK胡美美女管理学院712S53105322S9图5右连接:列出右边关系中所有的元祖,运行结果如下图6所示:select sc.sno,cno,grade,sname,sex,dept,oldgrade,tno from student right outer join scon (student.sno = sc.sno);select sc . snc , cnc . grade “ sndir.e,r sex. dept, cldgrade r tnc from student richt oiter - oin sc-

13、on (student.sna = sc.sno);H结果|匾消息|snoenogradesnamesexdeptaidgradetnoJ_2M7CD11D5321NULL李明管理学院6SSS512_2007CD11D532277李明管理学院6SSS512_2007CD11D53237李明管理学院6SSS51_4_2007CK1D532170弓长丽女管理学院5fi2S52_5_24HJ7CK1D5322G7弓长丽女管理学院5fi2852_6_24HJ7CK1D5323%弓长丽女管理学院5fi2852724HJ7CK1D53217S胡美美女管理学院71285324HJ7CK1D5322S3胡美美女管理学院712S535,查询工资不在2000到3000的教师姓名,按工资排序,SQL语句是:Select tname from teacher where salary 3000 order by salary;或者:Select tname

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 办公文档 > 活动策划

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号