iis服务器助手广告
返回顶部
首页 > 资讯 > 数据库 >mysql练习-学生信息管理系统
  • 243
分享到

mysql练习-学生信息管理系统

数据库javamysql 2023-12-23 20:12:56 243人浏览 薄情痞子
摘要

文章目录 学生信息管理系统一、分析1.1业务分析1.2分析系统1.2.1登录模块1.2.2学生模块1.2.3教师模块1.2.4系统管理人员模块 二、构建模型2.1 概念模型:ERP模型2.2 数据模型:设计表格2.2.

学生信息管理系统

一、分析

1.1业务分析

学生信息管理系统是面向学生和学校教师的一个多功能数据管理平台,学生信息管理是高等教学管理系统中很重要的功能之一,该系统主要满足教师和学生用户需求。

1.2分析系统

系统面向的用户、系统的功能

本系统面向的用户有学校在校学生、教师以及系统管理人员,对于不同的用户,系统所提供给的功能也有所不同,其中对于学生来说,学生可以提供过该系统进行自身数据,成绩与课程以及学生对应老师的查询以及部分自身信息的修改,教师可以通过该系统实现对自身数据查询、学生信息与学生成绩管理等,系统管理人员可以查看与修改系统所有数据。

1.2.1登录模块

通过登录界面进行选择登录用户类型,使用各用户对应的唯一主键与密码信息进行登录系统。该系统未实现注册功能,如需要注册新用户可联系系统管理人员,系统管理人员电话号码于登录界面右下角展示。

1.2.2学生模块

学生用户登录成功后可以执行的功能有:

①查看个人成绩

②选课

③退课

④查看已选课程对应老师信息

⑤查看个人信息

⑥修改密码

⑦退出,返回登录界面

1.2.3教师模块

教师用户登录成功后可以执行的功能有:

①查看个人信息

②录入授课课程学生成绩

③查看成绩单

④修改密码

⑤修改授课课程学生成绩

⑥退出,返回登录界面

1.2.4系统管理人员模块

管理人员登录成功后可对系统所有非管理员信息进行增删查改。

二、构建模型

2.1 概念模型:ERP模型

该E-R模型暂不完整

在这里插入图片描述

2.2 数据模型:设计表格

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

按照将E-R图转换为关系模式的规则,将上图所示E-R图转换,得到的关系模式为:学生(学号,姓名,性别,年龄,电话,登录密码)

教师(教师编号,姓名,性别,年龄,职位,电话,登录密码)

住宿(公寓房间编号,具体地址,宿管)

课程(课程编号,课程名,教师编号)

成绩(学生编号,学生姓名,课程编号,课程名,成绩,授课老师)

对上述关系模式进行以下优化。将住宿的实体主键‘房间编号’分别加入到学生和教师中,创建实体集师生关系(教师编号,学号)对应学生与老师的关系模式,可以创建已选课程关系(课程编号,学生编号)对应课程与学生的关系模式将其与成绩表进行关系,所以成绩表优化为(学生编号,课程编号,成绩),成绩可以为空值,添加学生的课程向成绩表中添加学生与课程的主键,成绩设置为空,这样学生所拥有的课程通过成绩表查询。优化后的关系模式为(暂未设计管理员关系模型):

学生(学号,姓名,性别,年龄,电话,登录密码,公寓房间编号)

教师(教师编号,姓名,性别,年龄,职位,电话,登录密码,公寓房间编号)

住宿(公寓房间编号,具体地址,宿管)

课程(课程编号,课程名,教师编号)

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

师生关系(教师编号,学号)

2.2.2 设计表格
2.2.2.1学生表
字段名数据类型长度是否主键说明
stu_idint11学生表主键
stu_namevarchar20姓名
stu_gendervarchar20性别
stu_ageint3年龄
stu_phoneint20电话
stu_passWordvarchar20登录密码
live_idint11公寓房间编号
2.2.2.2教师表
字段名数据类型长度是否主键说明
t_idint11教师表主键
t_namevarchar20姓名
t_gendervarchar20性别
t_ageint3年龄
t_positionvarchar20职位
t_phoneint20电话
t_passwordvarchar20登录密码
live_idint11公寓房间编号
2.2.2.3住宿表
字段名数据类型长度是否主键说明
live_idint11公寓表主键
live_addressvarchar50居住地址
live_managervarchar20宿管
2.2.2.4课程表
字段名数据类型长度是否主键说明
c_idint11课程表主键
c_namevarchar20课程名
t_idvarchar11教师表主键
2.2.2.5成绩表
字段名数据类型长度是否主键说明
stu_idint11学生表主键
c_idint11课程表主键
scvarchar20成绩
2.2.2.6师生关系表
字段名数据类型长度是否主键说明
stu_idint11学生表主键
t_idint11教师表主键
2.2.2.7已选课程表
字段名数据类型长度是否主键说明
stu_idint11学生表主键
c_idint11课程表主键

三、创建表格

利用sql语句按照上述构建的模型创建表格

3.1创建学生信息管理系统数据库

CREATE DATABASE studentinfosystem CHARACTER SET ‘utf8’;

3.2创建学生表

CREATE TABLE student (

stu_id int(11) NOT NULL AUTO_INCREMENT COMMENT ‘学生表主键’,

stu_name varchar(20) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL,

stu_gender varchar(20) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL,

stu_age int(3) NOT NULL,

stu_phone varchar(20) CHARACTER SET utf8 COLLATE utf8_general_ci,

stu_password varchar(20) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT ‘123456’,

live_id int(11) NULL DEFAULT NULL,

PRIMARY KEY (stu_id)

) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8;

3.2创建教师表

CREATE TABLE teacher (

t_id int(11) NOT NULL AUTO_INCREMENT COMMENT ‘教师表主键’,

t_name varchar(20) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL,

t_gender varchar(20) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL,

t_age int(3) NOT NULL,

t_position varchar(20) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL,

t_phone varchar(20) CHARACTER SET utf8 COLLATE utf8_general_ci,

t_password varchar(20) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT ‘123456’,

live_id int(11) NULL DEFAULT NULL,

PRIMARY KEY (t_id)

) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8;

3.3创建住宿表

CREATE TABLE live (

live_id int(11) NOT NULL AUTO_INCREMENT,

live_address varchar(50) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL,

live_manager varchar(20) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL,

PRIMARY KEY (live_id)

) ENGINE = InnoDB CHARACTER SET = utf8;

3.4创建课程表

CREATE TABLE course (

c_id int(11) NOT NULL AUTO_INCREMENT,

c_name varchar(20) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL,

t_id int(11) NOT NULL,

PRIMARY KEY (c_id)

) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8;

3.5创建成绩表

CREATE TABLE score (

stu_id int(11) NOT NULL,

c_id int(11) NOT NULL,

sc varchar(20) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL

PRIMARY KEY (stu_id, c_id)

) ENGINE = InnoDB CHARACTER SET = utf8;

3.6创建师生关系表

CREATE TABLE teacher_stu_relation (

t_id int(11) NOT NULL,

stu_id int(11) NULL DEFAULT NULL,

PRIMARY KEY (t_id, stu_id)

) ENGINE = InnoDB CHARACTER SET = utf8;

四、插入数据

4.1插入学生表数据

INSERT INTO student VALUES (1, ‘纳尼’, ‘男’, 20, ‘12345678910’, ‘123456’, 1);

INSERT INTO student VALUES (2, ‘范尼斯特鲁一’, ‘男’, 22, ‘10987654321’, ‘123456’, 1);

INSERT INTO student VALUES (3, ‘索尔斯克亚’, ‘男’, 25, ‘13579246810’, ‘123456’, 2);

INSERT INTO student VALUES (4, ‘弗雷德’, ‘男’, 18, ‘24681013579’, ‘123456’, 3);

4.2插入教师表数据

INSERT INTO teacher VALUES (1, ‘弗格森’, ‘男’, 60, ‘校长’, ‘13791379137’, ‘123456’, 4);

INSERT INTO teacher VALUES (2, ‘穆里尼奥’, ‘男’, 40, ‘教授’, ‘24682468246’, ‘123456’, 4);

INSERT INTO teacher VALUES (3, ‘朗尼克’, ‘男’, 45, ‘副教授’, ‘39713971397’, ‘123456’, 5);

4.3插入住宿表信息

INSERT INTO live VALUES (1, ‘房间1’, ‘宿管人员1’);

INSERT INTO live VALUES (2, ‘房间2’, ‘宿管人员1’);

INSERT INTO live VALUES (3, ‘房间3’, ‘宿管人员2’);

INSERT INTO live VALUES (4, ‘房间4’, ‘宿管人员2’);

INSERT INTO live VALUES (5, ‘房间5’, ‘宿管人员2’);

4.4插入课程信息

INSERT INTO course VALUES (1, ‘JavaSE基础’, 1);

INSERT INTO course VALUES (2, ‘数据库应用’, 1);

INSERT INTO course VALUES (3, ‘数据结构’, 1);

INSERT INTO course VALUES (4, ‘电路分析’, 2);

INSERT INTO course VALUES (5, ‘计算机网络’, 2);

INSERT INTO course VALUES (6, ‘数据库应用开发’, 3);

4.5插入成绩表信息

INSERT INTO score VALUES (1, 1, ‘40’);

INSERT INTO score VALUES (1, 2, ‘50’);

INSERT INTO score VALUES (1, 3, ‘60’);

INSERT INTO score VALUES (1, 4, ‘70’);

INSERT INTO score VALUES (2, 2, ‘65’);

INSERT INTO score VALUES (2, 3, ‘50’);

INSERT INTO score VALUES (2, 4, ‘60’);

INSERT INTO score VALUES (3, 3, ‘70’);

INSERT INTO score VALUES (3, 4, ‘75’);

INSERT INTO score VALUES (4, 6, ‘90’);

4.6插入师生关系信息

INSERT INTO teacher_stu_relation VALUES (1, 1);

INSERT INTO teacher_stu_relation VALUES (1, 2);

INSERT INTO teacher_stu_relation VALUES (1, 3);

INSERT INTO teacher_stu_relation VALUES (1, 4);

INSERT INTO teacher_stu_relation VALUES (2, 3);

INSERT INTO teacher_stu_relation VALUES (2, 4);

INSERT INTO teacher_stu_relation VALUES (3, 1);

五、维护数据

5.1 查询学生所有信息

select * from student;

在这里插入图片描述

5.2 查询老师所有信息

select * from teacher;
在这里插入图片描述

5.3 查询选课了电路分析科目的学生信息

select c_name as 科目名, stu.stu_id as 学号, stu_name as 姓名 from score as s inner join course as c on s.c_id = c.c_id inner join student as stu on s.stu_id = stu.stu_id where c.c_name = ‘电路分析’;

在这里插入图片描述

5.4 对应科目的老师信息

select c_id as 科目编号, c_name as 课程名, t_name as 教师名, t_phone as 电话 from course as c inner join teacher as t on c.t_id = t.t_id;

在这里插入图片描述

5.5 修改学生信息

update student set stu_name = ‘纳尼二世’ where stu_name = ‘纳尼’;

在这里插入图片描述

5.6 删除学号为1的学生信息

delete from student where stu_id = 1;

在这里插入图片描述

5.7 学号为2的学生选择数据库应用开发课程

insert into score(stu_id, c_id) values(2, 6);

在这里插入图片描述

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

select * from student where stu_age > 20;
在这里插入图片描述

5.9 学号为2的学生修改其电话号码

update student set stu_phone = 87654321000 where stu_id = 2;
在这里插入图片描述

来源地址:https://blog.csdn.net/Wang_HaoYuan/article/details/126411518

您可能感兴趣的文档:

--结束END--

本文标题: mysql练习-学生信息管理系统

本文链接: https://www.lsjlt.com/news/551754.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • mysql练习-学生信息管理系统
    文章目录 学生信息管理系统一、分析1.1业务分析1.2分析系统1.2.1登录模块1.2.2学生模块1.2.3教师模块1.2.4系统管理人员模块 二、构建模型2.1 概念模型:ERP模型2.2 数据模型:设计表格2.2....
    99+
    2023-12-23
    数据库 java mysql
  • 学生信息管理系统(JAVA+MYSQL)
    基于Java swing+MySQL实现学生信息管理系统:功能:1录入学生基本信息的功能; 2查询学生基本信息的功能; 3修改学生基本信息的功能 ;4删除学生基本信息的功能 ;5显示所有学生信息的功能;应付一般课设足矣,分享给大家。 通过百...
    99+
    2023-09-26
    java idea mysql
  • 【JAVA】学生信息管理系统
    目录 前言 一、环境搭建 二、功能实现 1.学生信息类的创建 2.学生信息的添加功能 3.学生信息的删除功能 4.学生信息的修改功能  5.学生信息的查看功能  三、主类的调用 1.界面的搭建 2.学生端和教师端 3.系统和功能的选择 总...
    99+
    2023-09-09
    java
  • Python之学生信息管理系统
    目录 一、基础界面实现  1、主函数 2、保持循环,获取用户需求  二、函数实现模块功能 1、添加学生信息 2、删除学生信息  3、修改学生信息 4、查找全部学生信息 5、退出系统 三、整合代码 1、 完整代码 2、完整实现过程 实现 ...
    99+
    2023-08-31
    python
  • PHP+MYSQL【学生信息管理系统】(极简版)
    本次实验采用HBuilder+Xampp实现PHP+MYSQL代码编写 效果如下图所示       一、PHP程序编写 打开HBuider程序,新建文件夹login,文件目录如下: 新建login.html实现登录界面 ...
    99+
    2023-09-01
    php mysql 开发语言
  • Javaweb学生信息管理系统(Mysql+JSP+MVC+CSS)
    项目源码及数据库: 链接:https://pan.baidu.com/s/1ktUyxbOI9lljWr-HRTRIiQpwd=1024 提取码:1024   目录 一.项目介绍 二.运行效果 1.登录界面 2.主界面(点击学号修改学生信息...
    99+
    2023-10-26
    mvc java 开发语言
  • Java web学生信息管理系统(jsp)
    🥞目录 🍬1 概述 1.1课程设计目的 1.2预备知识 JAVAWeb: MySQL: JSP: 1.3实训的内容和要求 🍬2 需求分析 2.1系统目标 2.2功能分析: 2.3开发环境: ...
    99+
    2023-09-16
    java javascript html5 mysql intellij-idea
  • 学生信息管理系统的数据库设计MySQL
    学生信息管理系统的数据库设计 1.课程设计目的 学生信息管理系统是一个教育单位不可缺少的部分。一个功能齐全、简单易用的信息管理系统不但能有效地减轻学校相关工作人员的工作负担,它的内容对于学校的决策者和...
    99+
    2023-10-23
    数据库 mysql
  • 用python实现学生信息管理系统
    用Python实现学生信息管理系统,供大家参考,具体内容如下 系统功能有: 1.录入,查找,删除,修改学生信息2.学生成绩排名3.显示全部学生信息 代码如下: filename = ...
    99+
    2024-04-02
  • JavaWeb实现学生信息管理系统(1)
    这是一个很简单的学生信息管理系统,会用到很多小知识,比如说: 数据库连接池 DBUtils JSP、EL、JSTL MVC设计模式 JavaWeb...
    99+
    2024-04-02
  • JavaWeb实现学生信息管理系统(2)
    本文接着上一篇,继续为大家分享了JavaWeb实现学生信息管理系统的第二篇,供大家参考,具体内容如下 今日任务:实现学生管理系统的查找和添加功能! 一、查询学生信息 1. index...
    99+
    2024-04-02
  • JavaScript+HTML实现学生信息管理系统
    目录一、前言二、效果图三、代码四、学生信息管理系统主界面一、前言 用数组来存储所有学生对象的信息,实现了双向更新,初始时(数组内的对象信息“填充界面”),后面的界面操作可以更新数组内...
    99+
    2024-04-02
  • java+sqlserver实现学生信息管理系统
    目录一.实现效果二.实现代码1.DBUtil.java2.操作程序test.java前提: 1.建立了与sqlserver数据库的连接(JTDS连接sqlserver数据库的包jtd...
    99+
    2024-04-02
  • python tkinter实现学生信息管理系统
    本文实例为大家分享了python tkinter实现学生信息管理系统的具体代码,供大家参考,具体内容如下 初学python,代码写的比较繁杂,系统功能还有完善的空间 系统使用了mys...
    99+
    2024-04-02
  • JavaWeb实现学生信息管理系统(3)
    本文接着第二篇,继续为大家分享了JavaWeb实现学生信息管理系统,供大家参考,具体内容如下 今日任务:实现学生管理系统的删除、更新、修改和模糊查询功能! 一、删除学生信息 点击超链...
    99+
    2024-04-02
  • 基于JAVA的学生信息管理系统
    目录 前言 一、需求分析 二、开发环境、工具 1.开发语言 2.开发模式 三、系统需求分析 3.1系统的背景 3.2系统的功能需求 四、系统设计概要 4.1系统体系结构设计 4.2功能模块结构设计 五、数据库设计 1.学生信息数据表 2.班...
    99+
    2023-10-05
    java mysql eclipse 课程设计
  • MySQL 案例-教学管理信息系统
    MySQL 案例-教学管理信息系统 一、数据库设计及创建二、向表中插入数据、修改数据三、完成以下查询设计及SQL代码四、完成如下数据库应用设计 一、数据库设计及创建 对教学管理信息系统,在需求分析阶段,收集到以下信息。 学生的信...
    99+
    2023-12-25
    mysql 数据库
  • Python制作基础学生信息管理系统
    目录 一.前言二.开发环境:三.涉及知识点四.接下来我们开始敲代码第一步:制作学生信息管理系统的界面第二步:新建学生信息第三步:显示全部学生信息第四步:查询学生信息第五步:修改学生信...
    99+
    2024-04-02
  • python怎么实现学生信息管理系统
    本文将为大家详细介绍“python怎么实现学生信息管理系统”,内容步骤清晰详细,细节处理妥当,而小编每天都会更新不同的知识点,希望这篇“python怎么实现学生信息管理系统”能够给你意想不到的收获,请大家跟着小编的思路慢慢深入,具体内容如下...
    99+
    2023-06-06
  • C++实现简单学生信息管理系统
    本文实例为大家分享了C++实现学生信息管理系统的具体代码,供大家参考,具体内容如下 编译环境: Microsoft Visual Studio 2019 3个头文件: Fileope...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作