MySQL-J4-2 《学生管理系统》选课管理模块

本文详细描述了《学生管理系统》中的选课管理模块,涉及数据库创建、数据表设计(包括T_student、T_course、T_score)、外键约束设置、默认值设定以及SQL操作,如数据插入、查询和备份。
摘要由CSDN通过智能技术生成
 

试题编号:J4-2 《学生管理系统》选课管理模块

(1)任务描述

《选课管理》模块的E-R图如图2.1所示,逻辑数据模型如图2.2所示,物理数据模型如图2.3 所示,数据表字段名定义见表2.1。请按以下设计完成数据库创建、数据表创建和数据操作任务:

图2.1 E-R 图

图2.3 物理数据原型

表2.1 字段名定义表

字段名

字段说明

字段名

字段说明

Stud_id

学号

Reserve

备注

Stud_name

姓名

Course_id

课程编号

Stud_sex

性别

Course_name

课程名称

Birth_date

出生日期

Teacher_name

教师姓名

Entry_Date

入学日期

Score_id

成绩编号

Mobile

手机号码

Score

成绩

Birth_place

籍贯

任务一:创建数据库(10 分)

创建数据库 StudentDB。

任务二:创建数据表(25 分)

根据图2.2、图2.3和表 2.1,创建数据表 T_student、T_course、T_score。

任务三:创建数据表间的关系及约束(15 分)

1.   根据物理数据原型,创建外键约束;

2.   籍贯(birth_place)的默认值为“湖南株洲”;

3.   成绩(score)的默认值为0;

4.   性别(Stud_sex)的默认值为“男”;

5.   教师姓名(Teacher_name)的默认值为“王老师”。

任务四:数据操作(30 分)

用 SQL 语句完成如下操作:

1.   向t_student表插入数据:“1,夏迪,女, 1999-07-23 08:35:29, 2017-09-01 08:35:58, 12345678910,湖南省邵阳市,无”;“2,张明,男, 1999-04-25 09:35:30, 2017-09-01 09:40:40, 13487653456,湖南省长沙市,体育特长生”;“3,刘美,女, 1999-08-15 07:40:10, 2017-09-02 09:30:58, 15786647896,湖南省株洲市,无”;

INSERT INTO t_student VALUES
('1','夏迪','女','1999-07-23 08:35:29','2017-09-01 08:35:58','12345678910','湖南省邵阳市','无'),
('2','张明','男','1999-04-25 09:35:30','2017-09-01 09:40:40','13487653456','湖南省长沙市','体育特长生'),
('3','刘美','女','1999-08-15 07:40:10','2017-09-02 09:30:58','15786647896','湖南省株洲市','无');

2.   向t_course表插入数据:“1, 数据库原理, 王老师”;“2, 日语, 李老师”;“3, 英语, 刘老师”;

INSERT INTO t_course VALUES('1','数据库原理','王老师'),('2','日语','李老师'),('3','英语','刘老师');

3.   向 t_score表插入数据:“1, 1, 1, 95”;“2, 2, 2, 85”;“3, 3, 3, 90”;

INSERT INTO t_score VALUES(1,'1','1',95),(2,'2','2',85),(3,'3','3',90);

4.   查询出备注为“体育特长生”的学生学号、姓名和籍贯;

SELECT Stud_id,Stud_name,Birth_place FROM t_student WHERE Reserve='体育特长生';

5.   查询出“数据库原理”这门课程的最低成绩。

SELECT MIN(Score) FROM t_score,t_course WHERE Course_name='数据库原理';

任务五:数据备份(10 分)

备份数据库,存放在答题文件夹中。

studentdb(备份).sql文件数据

DROP TABLE IF EXISTS `t_course`;
CREATE TABLE `t_course` (
  `Course_id` varchar(10) NOT NULL,
  `Course_name` varchar(100) DEFAULT NULL,
  `Teacher_name` varchar(30) DEFAULT '王老师',
  PRIMARY KEY (`Course_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;

INSERT INTO `t_course` VALUES ('1', '数据库原理', '王老师');
INSERT INTO `t_course` VALUES ('2', '日语', '李老师');
INSERT INTO `t_course` VALUES ('3', '英语', '刘老师');

DROP TABLE IF EXISTS `t_score`;
CREATE TABLE `t_score` (
  `Score_id` bigint(20) NOT NULL,
  `Course_id` varchar(10) DEFAULT NULL,
  `Stud_id` varchar(10) DEFAULT NULL,
  `Score` decimal(5,2) DEFAULT '0.00',
  PRIMARY KEY (`Score_id`),
  KEY `fk1` (`Course_id`),
  KEY `fk2` (`Stud_id`),
  CONSTRAINT `fk1` FOREIGN KEY (`Course_id`) REFERENCES `t_course` (`Course_id`),
  CONSTRAINT `fk2` FOREIGN KEY (`Stud_id`) REFERENCES `t_student` (`Stud_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;

INSERT INTO `t_score` VALUES ('1', '1', '1', '95.00');
INSERT INTO `t_score` VALUES ('2', '2', '2', '85.00');
INSERT INTO `t_score` VALUES ('3', '3', '3', '90.00');

DROP TABLE IF EXISTS `t_student`;
CREATE TABLE `t_student` (
  `Stud_id` varchar(10) NOT NULL,
  `Stud_name` varchar(20) DEFAULT NULL,
  `Stud_sex` char(2) DEFAULT '男',
  `Birth_date` datetime DEFAULT NULL,
  `Entry_Date` datetime DEFAULT NULL,
  `Mobile` varchar(11) DEFAULT NULL,
  `Birth_place` varchar(25) DEFAULT '湖南株洲',
  `Reserve` text,
  PRIMARY KEY (`Stud_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;

INSERT INTO `t_student` VALUES ('1', '夏迪', '女', '1999-07-23 08:35:29', '2017-09-01 08:35:58', '12345678910', '湖南省邵阳市', '无');
INSERT INTO `t_student` VALUES ('2', '张明', '男', '1999-04-25 09:35:30', '2017-09-01 09:40:40', '13487653456', '湖南省长沙市', '体育特长生');
INSERT INTO `t_student` VALUES ('3', '刘美', '女', '1999-08-15 07:40:10', '2017-09-02 09:30:58', '15786647896', '湖南省株洲市', '无');
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值