数据库 | 您所在的位置:网站首页 › 学生选课管理系统论文立题理由怎么写 › 数据库 |
一、前言
该项目非常适合MySQL入门学习的小伙伴,博主提供了源码、数据和一些查询语句,供大家学习和参考,代码和表设计有什么不恰当还请各位大佬多多指点。 所需环境 MySQL可视化工具:navicat; 数据库:MySql 5.7/8.0等版本均可; 需求:学生选课系统主要完成某学校教务系统中选课功能: 学生信息管理教师信息管理课程信息管理教室信息管理选课管理 备注: 每个学生可选多门课程,每门课程有多个学生。每位教师教授一门课程。每个班级有多个学生,每个学生对应一个班级。其中: 学生包含以下属性:学号、学生姓名、学生性别。 教师包含以下属性:教工号、教师姓名、教师职称。 课程包含以下属性:课程号、课程名、课程学分。 教室包含以下属性:班级编号、学生人数、班级名称。 选课包含以下属性:学生成绩。 二、E-R图课程(课程号、课程名、课程学分、教工号) 教师(教工号、教师姓名、教师职称) 选课(课程号、学号、成绩) 学生(学号、学生姓名、学生性别、班级编号) 班级(班级编号、学生人数、班级名称) 备注: 下划线为主键,红色字为外键; 四、数据表的设计 表1:课程字段 数据类型 长度 备注
课程号 varchar 50 主键
课程名 varchar 50 Not.null
课程学分 int 3
教工号 varchar 50 外键 表2:教师 字段 数据类型 长度 备注
教工号 varchar 50 主键
教师姓名 varchar 50 Not.null
教师职称 varchar 50
表3:学生 字段 数据类型 长度 备注
学号 varchar 50 主键
学生姓名 varchar 50 Not.null
学生性别 varchar 50
班级编号 varchar 50 外键 表4:班级 字段 数据类型 长度 备注
班级编号 varchar 50 主键
班级名称 varchar 50 Not.null
学生数量 int 5
表5:选课 字段 数据类型 长度 备注
学号 varchar 50 主键
课程号 varchar 50 主键
成绩 int 5 Not.null 五、创建数据库 Create database 学生选课系统 character set utf8 collate utf8_general_ci -- 在新建查询选择前选择数据库 use 学生选课系统 创建各实体表: 1. 老师 create table 老师 ( 教工号 varchar(50) primary key, 教师姓名 varchar(50) not null, 教师职称 varchar(50) ) 2. 班级 create table 班级 ( 班级编号 varchar(50) primary key, 班级名称 varchar(50) not null, 学生数量 int(5) ) 3. 课程 create table 课程 ( 课程号 varchar(50) PRIMARY key, 课程名 varchar(50) not null, 课程学分 int(3), 教工号 char(5), CONSTRAINT FK教工号 FOREIGN KEY (教工号) REFERENCES 老师(教工号) ) 4. 学生 create table 学生 ( 学号 varchar(50) PRIMARY key, 学生姓名 varchar(50) not null, 学生性别 varchar(50), 班级编号 varchar(50), CONSTRAINT FK 班级编号 FOREIGN KEY (班级编号) REFERENCES 班级(班级编号) ) 5. 选课 create table 选课 ( 学号 varchar(50), 课程号 varchar(50), 成绩 int(5) not null, PRIMARY KEY(学号, 课程号) ) 插入数据: 1. 老师 INSERT INTO 老师 VALUES ('J001','wuping','教授'); INSERT INTO 老师 VALUES ('J002','zhangshuai','讲师'); INSERT INTO 老师 VALUES ('J003','liguoqiang','副教授'); INSERT INTO 老师 VALUES ('J004','wangni','讲师'); INSERT INTO 老师 VALUES ('J005','liubo','讲师'); 2. 班级 INSERT INTO 班级 VALUES ('B001','软件1班','30'); INSERT INTO 班级 VALUES ('B002','软件2班','29'); INSERT INTO 班级 VALUES ('B003','软件3班','31'); INSERT INTO 班级 VALUES ('B004','嵌入式1班','32'); INSERT INTO 班级 VALUES ('B005','嵌入式2班','33'); INSERT INTO 班级 VALUES ('B006','嵌入式3班','30'); 3. 课程 INSERT INTO 课程 VALUES ('K001','数据库','4','J002'); INSERT INTO 课程 VALUES ('K002','java','4','J003'); INSERT INTO 课程 VALUES ('K003','python','6','J001'); INSERT INTO 课程 VALUES ('K004','英语','2','J005'); INSERT INTO 课程 VALUES ('K005','数学','8','J004'); 4. 学生 INSERT INTO 学生 VALUES ('X005','zhangsan','男','B002'); INSERT INTO 学生 VALUES ('X004','lisi','女','B003'); INSERT INTO 学生 VALUES ('X003','wangwu','男','B004'); INSERT INTO 学生 VALUES ('X002','liuyu','男','B005'); INSERT INTO 学生 VALUES ('X001','chenqi','男','B001'); INSERT INTO 学生 VALUES ('X006','wangxin','女','B001'); INSERT INTO 学生 VALUES ('X007','yangli','男','B002'); INSERT INTO 学生 VALUES ('X008','qinyan','女','B006'); 5. 选课 INSERT INTO 选课 VALUES ('X001','K002','82'); INSERT INTO 选课 VALUES ('X001','K003','78'); INSERT INTO 选课 VALUES ('X002','K005','90'); INSERT INTO 选课 VALUES ('X002','K003','74'); INSERT INTO 选课 VALUES ('X003','K001','66'); INSERT INTO 选课 VALUES ('X003','K002','75'); INSERT INTO 选课 VALUES ('X004','K005','95'); INSERT INTO 选课 VALUES ('X004','K004','83'); INSERT INTO 选课 VALUES ('X005','K001','75'); INSERT INTO 选课 VALUES ('X005','K004','87'); INSERT INTO 选课 VALUES ('X007','K001','79'); 六、基础查询命令 1. 查看xxx表所有信息: select * from xxxx *表示全部,查看xxx的全部数据 select * from 老师select field1,field2…… from tablenname(表名) select 学号,学生姓名 from 学生and满足所有条件。or满足其中任何一个条件就可以 select * from 学生 where 学生性别 ='男' and 班级编号 ='B002' and 学生姓名 = 'yangli'![]() 从选课中选取分数在80~90的(可取端点) select * from 选课 where 成绩 between 80 and 90在选课中查询分数以9开头的信息,%9%是查询信息中含有9的。%表示模糊数据 select * from 选课 where 成绩 like '9%'从学生表格中统计B002班的有几个 select count(*) from 学生 where 班级编号 ='B002'从选课表格中计算分数和。 select sum(成绩) from 选课求所有学生的平均成绩。 select avg(成绩) from 选课从选课表格中查询课程号K003课的最高分。 select max(成绩) from 选课 where 课程号 ='K003'从选课表格中查询课程号K003课的最低分 select min(成绩) from 选课 where 课程号 ='K003'代码有问题或需要其他的查询语句,都可以随时评论留言或联系博主。 还多请各位小伙伴多多点赞支持,你们的支持是我最大的动力。 博主V:18884281851 谢谢各位的支持~~
|
今日新闻 |
推荐新闻 |
专题文章 |
CopyRight 2018-2019 实验室设备网 版权所有 |