| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 大数据 -> 数据库实验4 4月26日 -> 正文阅读 |
|
[大数据]数据库实验4 4月26日 |
建立一个“选课管理”的数据库。(表结构及内容如下)
说明:
(a)表的建立和查询只能使用
SQL
语句
(b)表建立的同时请指定主码,和各个字段是否能为空;
(c)请根据实际情况选择数据类型,实现一定的完整性约束,例如性别只
能是‘男’或者‘女’
(d)请在课程表中设定外键(先修课)
? ?? ??? ? ?? ? 1、首先创建一个数据库,名为my1 2、创建各个数据库 ?unsigned:无符号 primary key:主键,一个数据表只能有一个主键 enum:枚举类型,从枚举列表中取一个 tinyint unsigned:无符号的数据类型tinyint,字节数为1,无符号取值范围为0-255 ?default:默认约束关键词,设置默认值 ?foreign key(教师编号) references 教师表(教师编号) 教师编号为外键,数据是教师表里面的教师编号 3、添加数据 学生表: 课程表:在创建课程表时,是将先修课作为外键使用的,所以直接写 课程号=1的先修课是课程号=5 系统会报错,如图所示: ??所以需要先将所有课程的先修课那一列的值全部设置为NULL,系统才不会报错,如图所示: ? ?然后再用update语句将先修课的值给补上,例如1号课程的先修课为5号课程,如图所示: ? 教师表: 选课表: ?4、查看结果
完成如下操作:
(1) 查询‘
CS
’系全体老师的信息;
(2) 查询全体学生的姓名及出生日期;
(3) 查询年龄不大于
20
岁的CS’系学生的信息;
(4) 查询年龄不在
18
-
20
岁的学生信息;
(5) 查询‘CS’和‘IS’系老师的姓名和年龄;
(6) 查询姓名最后一个字为‘敏’的老师信息;
(7) 查询基础课程(没有先行课)的信息;
(8) 查询老师的总人数;
(9) 计算选修
5
号课程的学生的平均分、最高分和最低分;
(10) 求每门课程的选修人数;
(11) 求选修人数超过
3
人的课程信息;
(12) 查询每个学生及其选修课程的情况;
(13) 查询每一门课的间接先修课的先修课(先修课的先修课的先 修课);
(14) 查询选修‘数据结构’课程并且成绩在
80
分以上的学生信 息;
(15) 查询‘CS’系比‘IS’系某一学生年龄小的学生姓名和年龄。
(16) 查询没有选修‘操作系统’课程的‘CS’系的学生姓名;
(17) 查询选修了全部课程的学生姓名;
(18) 查询讲授‘PASCAL 语言’课程所有老师的信息;
(19) 查询李可老师所讲授的所有课程;
(20) 查询选修了李可老师所讲授的所有课程的学生姓名;
(21) 查询‘CS’系老师讲授的所有课程信息;
(22) 查询每个老师的授课情况;
(23) 将‘CS’系所有学生的选课成绩加
1
分;
(
24) 建立‘CS’系选修‘操作系统’课程的学生信息视图。
(25) 建立‘CS’系选修‘操作系统’课程及其成绩的视图;
未完待续
|
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/24 0:50:45- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |