MySQL课程设计——简易学生信息管理系统

这篇具有很好参考价值的文章主要介绍了MySQL课程设计——简易学生信息管理系统。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

一 分析

1.1 系统需求分析

1.1.1 业务分析

学生信息管理系统时面向学生和学校教师的一个多功能数据管理平台。

1.1.2 分析系统

本系统所设计到的用户有学校在校学生、教师,对于不同的用户系统所提供给的功能也有所不同,其中对于学生来说,学生可以通过该系统进行学生基本信息查询、考试成绩查询、选修课程查询、住宿基本信息查询,修改自身部分基本信息,教师可以通过该系统实现对自身数据查询、学生成绩管理等。

1.2 功能模块

1.2.1 学生模块

学生是整个系统的使用者,学生可以通过该系统进行学生基本信息查询、考试成绩查询、选修课程查询、住宿基本信息查询,修改自身部分基本信息。

1.2.2 教师模块

教师是整个系统的使用者,教师可以通过该系统实现对自身数据查询、学生成绩管理等,修改自身部分基本信息。

二 构建模型

2.1 概念模型:ERP模型

学生信息管理系统是学生信息进行一体化管理的系统,它提供了学生学生基本信息管理、课程管理、成绩管理、住宿基本信息管理的功能,因此本系统所对应的实体就有学生、教师、课程、成绩、住宿,该系统的E-R图如下图所示。
MySQL课程设计——简易学生信息管理系统

2.2 数据模型:设计表格

2.2.1 将ERP模型转化为关系模式

按照将E-R图转换为关系模式的规则,将上图所示E-R图转换,得到的关系模式为:

学生(学号,姓名,年龄,院系,专业,住址)

教师(教师编号,教师姓名,教师年龄,教师职位,课程编号)

课程(课程编号,课程名称,开始时间,结束时间)

成绩(成绩编号,学生学号,课程编号,课程名称,学生成绩)

住宿(公寓编号,公寓名称,公寓校区,公寓楼层)

对上述关系模式进行以下优化。“教师”关系中的“教师职位”会出现大量的数据冗余,为了更好体现教师职位和教师之间的关联关系,可以进行拆分成一个职位表;可分出一个“职位”关系,包含“职位编号”和“职位名称”等属性,将“教师”关系中的“教师职位”属性改为“职位编号”。优化后的关系模式为:

学生(学号,姓名,年龄,院系,专业,住址)

教师(教师编号,教师姓名,教师年龄,职位编号,课程编号)

课程(课程编号,课程名称,开始时间,结束时间)

成绩(成绩编号,学生学号,课程编号,课程名称,学生成绩)

住宿(公寓编号,公寓名称,公寓校区,公寓楼层)

职位(职位编号,职位名称)

2.2.2 设计表格

(1)学生实体(学生学号,学生姓名,学生年龄,所在院系,学生专业,学生住址)用于记录保存系统使用用户(学生)的基本信息;该表设计如表2.1所示。

2.1 学生表
字段名 数据类型 长度 是否主键 说明
stu_id int 14 学生表主键
stu_name varchar 12 学生姓名
stu_age int 2 学生年龄
stu_department varcahr 10 所在院系
stu_major varcahr 10 学生专业
address varcahr 255 学生住址

(2)教师实体(教师编号,教师姓名,教师年龄,职位编号,课程编号)用于记录保存系统使用用户(教师)的基本信息;该表设计如表2.2所示。

2.2 教师表
字段名 数据类型 长度 是否主键 说明
t_id int 16 教师表主键
t_name varchar 12 教师姓名
t_age int 2 教师年龄
p_id int 16 职位编号
course_id int 16 课程编号

(3)课程实体(课程编号,课程名称,开始时间,结束时间)用于记录保存系统使用用户(学生)的课程信息;该表设计如表2.3所示。

2.3 课程表
字段名 数据类型 长度 是否主键 说明
c_id int 16 课程表主键
c_name varchar 12 课程名称
start_time date 开始时间
end_time date 结束时间

(4)成绩实体(成绩编号,学生学号,课程编号,课程名称,学生成绩)用于记录保存系统使用用户(学生)的成绩信息;该表设计如表2.4所示。

2.4 成绩表
字段名 数据类型 长度 是否主键 说明
score_id int 16 成绩表主键
s_id int 16 学生学号
c_id int 16 课程编号
c_name varchar 12 课程名称
score int 3 课程成绩

(5)住宿实体(公寓编号,公寓名称,公寓校区,公寓楼层)用于记录保存系统使用用户(学生)的住宿信息;该表设计如表2.5所示。

2.5 住宿表
字段名 数据类型 长度 是否主键 说明
apartment_id int 16 住宿表主键
apartment_name varchar 12 公寓名称
apartment_campus varchar 8 公寓校区
apartment_floor int 2 公寓楼层

(6)职位实体(职位编号,职位名称)用于记录保存系统使用用户(教师)的职位信息;该表设计如表2.6所示。

2.6 职位表
字段名 数据类型 长度 是否主键 说明
position_id int 16 职位表主键
position_name varchar 12 职位名称

三 创建表格

3.1 学生表创建

在这create table student
(
​    stu_id  int(14) not null primary key auto_increment comment '学生表主键',

​    stu_name  varchar(12) comment '学生姓名',

​    stu_age  int(2) comment '学生年龄',

​    stu_department  varchar(10) comment '所在院系',

​    stu_major  varchar(10) comment '学生专业',

​    address  varchar(255) comment '学生住址'

) character set utf8;

3.2 教师表创建

create table teacher
(
​    t_id  int(16) not null primary key auto_increment comment '教师表主键',

​    t_name  varchar(12) comment '教师姓名',

​    t_age  int(2) comment '教师年龄',

​    p_id  int(16) comment '职位编号',

​    course_id  int(16) comment '课程编号'

) character set utf8;

3.3 课程表创建

create table course
(

​    c_id  int(16) not null primary key auto_increment comment '课程表主键',

​    c_name  varchar(12) comment '课程名称',

​    start_time  date comment '开始时间',

​    end_time  date comment '结束时间'

) character set utf8;

3.4 成绩表创建

create table score
(

​    score_id  int(16) not null primary key auto_increment comment '创建表主键',

​    s_id  int(16) comment '学生学号',

​    c_id  int(16) comment '课程编号',

​    c_name  varchar(12) comment '课程名称',

​    score  int(3) comment '课程成绩'

) character set utf8;

3.5 住宿表创建

create table apartment
(

​    apartment_id  int(16) not null primary key auto_increment comment '住宿表主键',

​    apartment_name  varchar(12) comment '公寓名称',

​    apartment_campus  varchar(8) comment '公寓校区',

​    apartment_floor  int(2) comment '公寓楼层'

) character set utf8;

3.6 职位表创建

create table position
(

​    position_id  int(16) not null primary key auto_increment comment '职位表主键',

​    position_name  varchar(12) comment '职位名称'

) character set utf8;

四 插入数据

4.1 学生表数据添加

INSERT INTO student (stu_id, stu_name, stu_age, stu_department, stu_major, address)

VALUES (101, '张三', 18, '计算机', '软件工程', '湖北武汉'),(102, '李四', 21, '文新', '汉语言', '湖南长沙')

4.2 教师表数据添加

INSERT INTO teacher (t_id, t_name, t_age, p_id, course_id)

VALUES (201, '张三', 31, 601, 301),(202, '李四', 32, 602, 602)

4.3 课程表数据添加

INSERT INTO course (c_id, c_name, start_time, end_time)

VALUES (301, 'Java', '2022-03-15', '2022-06-15'),(302, 'Python', '2021-09-16', '2021-12-16')

4.4 成绩表数据添加

INSERT INTO score (score_id, s_id, c_id, c_name, score)

VALUES (401, 101, 301, 'Java', 95),(402, 102, 302, 'Python', 87)

4.5 住宿表数据添加

INSERT INTO apartment (apartment_id, apartment_name, 

apartment_campus, apartment_floor)

VALUES (501, '楷苑', '龙山校区', 6),(502, '桃苑', '龙山校区', 12);

4.6 职位表数据添加

INSERT INTO position (position_id, position_name)

VALUES (601, '讲师'),(602, '教授')

五 维护数据

5.1 查询学生所有信息

select * from student;

MySQL课程设计——简易学生信息管理系统

5.2 查询老师所有信息

select * from teacher;

MySQL课程设计——简易学生信息管理系统

5.3 查询选课了Java科目的学生信息

select s.*,sc.score,c.c_name

from student s

​         join score sc on s.stu_id = sc.s_id

​         join course c on sc.c_id = c.c_id where c.c_name='Java';

MySQL课程设计——简易学生信息管理系统

5.4 对应科目的老师信息

select t.*, c.c_id, c.c_name

from teacher t

​         join course c on t.course_id = c.c_id;

MySQL课程设计——简易学生信息管理系统

5.5 查询学号为102的学生选择Python课程

select s.*, c.c_name

from student s

​         join score sc on s.stu_id = sc.s_id

​         join course c on sc.c_id = c.c_id

where s.stu_id = 102

  and c.c_name = 'Python';

MySQL课程设计——简易学生信息管理系统

5.6 查询年龄大于20岁的学生信息

select *

from student

where stu_age > 20;

MySQL课程设计——简易学生信息管理系统文章来源地址https://www.toymoban.com/news/detail-486845.html

到了这里,关于MySQL课程设计——简易学生信息管理系统的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 面向对象程序设计(Java)课程设计——学生信息管理系统(GUI+文件)

    一、团队成员及任务 组长:宗庆亮  计科(智能)22-1  202203200021 负责模块:静态登录界面实现以及学生信息系统管理界面的创建 组员:郑金洲  计科(智能)22-1  202203200022 负责模块:增加,删除,修改以及查询功能的实现 团队博客:面向对象程序设计(Java)课程设计——学生

    2024年02月03日
    浏览(57)
  • 数据库课程设计——学生信息管理系统C#,SQL Sever

    目录 利用SQL Sever和 VS C#实现 一、程序流程图 二、具体实现:利用SQL Sever和 VS实现,使用C#连接数据库 1、新建一个名为MySchool的数据库​​​​​​​ 2、C#连接数据库,并实现对MySchool数据库的增、删、改、查操作 (1)主界面  (2)学生登录页面 (3)个人主页 (4)注册页

    2024年01月18日
    浏览(52)
  • 数据库课程设计——学生信息管理系统(Sqlserver,C#,Winform)

    目录 需求分析 一.登录功能 二.注册功能 三.管理员登录后跳转到功能页面: 四.学生信息管理(主界面,删除功能在主界面代码中) 五.学生信息添加和修改(设计在一个页面上,修改需要选中行) 六.课程信息管理(删除功能在主界面中)  七.课程信息添加和修改  八.成绩

    2024年02月02日
    浏览(53)
  • C语言课程设计:学生成绩信息管理系统(排序、平均分、总分)详解

    1、需求分析 利用C语言编写一个可以对学生成绩信息进行管理的系统 0、退出系统 1、录入学生信息和成绩 2、打印学生信息 3、统计学生人数 4、查找学生信息 5、修改学生信息 6、删除学生信息 7、排序学生成绩 8、生成学生信息文件 9、读取文件学生信息 10、输出各科成绩不

    2024年02月11日
    浏览(54)
  • 前端三大件html,css,js原生实现学生信息管理系统(课程设计)

      目录结构如该图所示,只要将文件命名成图上三种。代码即可正常运行。分别有三个文件,一个是app.js,放学生信息删除添加查询主要逻辑代码。login.html放登录页面样式以及相关逻辑。studentList.html 放置学生管理的页面。 运行效果图:   代码:  app.js login页面 studentList.

    2024年02月04日
    浏览(65)
  • 学生信息管理系统的数据库设计MySQL

    1.课程设计目的 学生信息管理系统是一个教育单位不可缺少的部分。一个功能齐全、简单易用的信息管理系统不但能有效地减轻学校相关工作人员的工作负担,它的内容对于学校的决策者和管理者来说都至关重要。所以学生信息管理系统应该能够为用户提供充足的信息和快捷

    2024年02月05日
    浏览(54)
  • 课程设计:商品零售信息管理系统(Python+MySQL+Tinker实现)

    本文为基于Python的商品零售管理系统,数据库采用MySQL,前端UI界面采用Tinker。 文内包含了从数据库到业务逻辑相关的所有的可运行代码。 商品销售信息管理系统主要用于对商品信息的管理,包括客户端和管理端两部分,分别涉及商品购买和各类信息的处理。 学生根据所学的

    2024年02月06日
    浏览(58)
  • Navicate + MFC 简易学生信息管理系统

    一、设计学生信息管理系统界面   导入数据按钮: (1)属性设置 ID:IDC_INPUTDATA 描述文字: 导入数据 (2)添加数据 ID:IDC_INSERTDATA 描述文字: 添加数据 (3)删除数据 ID:IDC_DELDATA 描述文字: 删除数据 (4)修改数据 ID:IDC_MODIFYDATA 描述文字: 修改数据 (5)退出 ID:IDC_EXIT

    2024年04月14日
    浏览(29)
  • 【毕业设计】基于java+mysql的学生信息管理系统源码(测试跑通)

    目录 1、前言介绍 2、主要技术 3、系统基本功能需求 3.1 系统结构 3.2 数据库需求分析 3.3 系统目标 4、数据库表的设计 5、系统的详细设计与实现 5.1 系统设计实现 5.1.1 登录界面实现 5.1.2 系统主界面  5.1.3 学生信息管理实现 5.1.4 班级信息管理 5.1.5 年级信息管理 5.1.6 数据字典

    2024年02月08日
    浏览(42)
  • 【Python毕业设计】基于Python+Flask+MySQL的学生信息管理系统(附完整源码)

    1、项目说明 基于python+Flask+mysql的学生信息管理系统项目实战 项目需要安装pycharm专业版,mysql数据库以及项目所需的所有模块 创建数据库名称db_online_notes,然后执行sql文件生成数据表和数据 项目需要安装 flask,pymysql以及其他的一些模块 安装命令如下: pip install -i https://pypi

    2023年04月18日
    浏览(40)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包