学生信息管理系统
- 分析
----业务分析
面向学生和老师的一个数据管理平台
----分析系统:系统面向的用户、系统的功能
向学生提供查询的功能
向老师提供增、删、查、改学生成绩,以及查询的功能
- 构建模型
2.1 概念模型:ERP模型
学生管理系统是一个面向学生和老师的数据管理平台,它提供了增、删、查、改信息的功能,但是以查询为主,因此本系统所对应的实体学生、教师、成绩、课程。
2.2 数据模型:设计表格
2.2.1 将ERP模型转化为关系模式eg:
按照将E-R图转换为关系模式的规则,将上图所示E-R图转换,得到的关系模式为:
学生(学号,名字,班级,年龄,性别)
教师(工号,姓名,年龄,性别)
成绩(编号,课程编号,分数)
课程(ID,名称,教师id)
2.2.2 设计表格
学生
字段名 | 数据类型 | 长度 | 是否主键 | 说明 | 是否自增 |
stu_id | int | 14 | 是 | 学生表主键 | 是 |
name | varchar | 255 | 否 | 否 | |
class | int | 14 | 否 | 否 | |
age | int | 8 | 否 | 否 | |
sex | varchar | 8 | 否 | 否 |
教师
字段名 | 数据类型 | 长度 | 是否主键 | 说明 | 是否自增 |
t_id | int | 14 | 是 | 教师表主键 | 是 |
name | varchar | 255 | 否 | 否 | |
age | int | 8 | 否 | 否 | |
sex | varchar | 8 | 否 | 否 |
成绩表
字段名 | 数据类型 | 长度 | 是否主键 | 说明 | 是否自增 |
s_id | int | 14 | 是 | 成绩表主键 | 是 |
score | double | 255 | 否 | 否 | |
t_id | int | 14 | 否 | 否 |
课程表
字段名 | 数据类型 | 长度 | 是否主键 | 说明 | 是否自增 |
c_id | int | 14 | 是 | 教师表主键 | 是 |
name | varchar | 255 | 否 | 否 | |
t_id | int | 14 | 否 | 否 |
- 创建表格
利用sql语句按照上述构建的模型创建表格
创建学生表
mysql> create table student(
-> stu_id int(14) primary key not null auto_increment,
-> name varchar(255),
-> class int(8),
-> age int(8),
-> sex varchar(255));
教师表:
mysql> create table teacher(
-> t_id int(14) primary key auto_increment,
-> name varchar(255),
-> age int,
-> sex varchar(255));
成绩表
mysql> create table score(
-> s_id int(14) primary key auto_increment,
-> name varchar(255),
-> t_id int);
课程表
mysql> create table score(
-> c_id int(14) primary key auto_increment,
-> name varchar(255),
-> t_id int);
- 插入数据
insert into student values (1,'江工程',0801,17,'男');
insert into student(name,class,age,sex) values ('徐生',0701,15,'男');
- 维护数据:
5.1 查询学生所有信息
5.2 查询老师所有信息
5.3 查询选课了历史科目的学生信息
5.4 对应科目的老师信息
5.5 修改学生信息
update student set name = '修改' where stu_id = 7;
5.6 删除学号为7的学生信息
5.7 学号为1的学生选择的课程
5.8 查询年龄大于16岁的学生信息
5.9 学号为1的学生修改其班级