一、目的:
1、检验对数据库、数据表定义操作的掌握情况
2、检验对数据表的查询、更新操作的掌握情况
二、内容:
1、定义数据库“School”
2、在数据库School内,定义关系表:
1)Classes(id,name,teacher)
属性说明: id char(5),name varchar(30),teacher varchar(10)
2)Student(id,name,sex,age,class)
属性说明:id char(5),name varchar(10),sex char(2),age smallint,class char(5)。注意:class是外码,参照classes表的主码。
3)classes表,插入数据如下:
1,2010级软件工程1班,张老师
2,2010级软件工程2班,张老师
3,2010级计算机科学与技术1班,王老师
4,2010级计算机科学与技术2班,王老师
4)Student表插入数据如下
1,张三,19,男,3
2,李四,20,男,4
3,王五,18,女,3
4,赵六,19,女,2
5,钱七,18,男,1
6,张八,19,女,1
7,王九,21,男,1
8,赵十,20,女,4
5)使用SQL语句实现如下查询
(1)查看School数据库有哪些表
(2)查看Student表的结构
(3)查询所有班级的信息
(4)查询3号班级的学生学号、姓名和年龄
(5)查询2010级软件工程1班学生的学号,姓名和出生年
(6)查询每个班级的学生数,结果显示班级号、班级人数
(7)查询每个班级的学生平均年龄,结果显示班级号、平均年龄
(8)查询每个教师所带学生数,结果显示教师名、带学生数
(9)查询教师带学生人数大于2人得教师号和带学生数
(10)查询每个班级的学生数,结果显示班级号和班级人数,按人数降序排序
6)数据更新和删除操作
(1)将Student的年龄都加1
(2)将软件工程1班的学生转专业到计算机科学与技术1班
(3)将软件工程专业的学生年龄减1
(4)删除计算机科学与技术专业的李姓同学
(5)更改4号班级为5号班级(注:需设置学生表外键class为级联修改,否则不予执行。)
(6)删除所有学生
7)表的更改和删除
1)更改Class数据表的结构,增加班级名字不能重复的约束。
2)删除Student表