【MYSQL】学生信息管理系统(学习及总结)

本文介绍了如何创建和管理一个学生信息管理系统,包括数据库设计、数据字典、查询记录、奖惩管理、院系与课程管理、用户权限等操作。重点强调了多表关联、笛卡尔积问题以及权限管理的注意事项,特别提醒不要随意使用`REVOKE ALL`。
摘要由CSDN通过智能技术生成

1、

(1)目标需求:查询且记录学生信息(姓名、年龄、性别、身份证号码)
        记录奖惩情况
        院系管理(设置学院名称、修改学院某专业方向的名称)
        基础数据维护
        课程进行管理
        学生选课管理、考试(登记分数)、补考重修管理
        用户权限管理

(2)数据字典

-- 谨以用于标记变量名意义

-- 学生表(student)
stu_no(学生编号(主键))
stu_name(学生姓名(唯一约束))
sex(性别)
age(年龄)
stu_id(学生身份证号码)
stu_Rp(学生奖惩情况reward and punishment)

-- 课程表(class)
class_no(课程编号(主键))
class_name(课程编号(唯一约束))
score(学分)

-- 院系表(uc(university college))
uc_no(学院编号(主键))
uc_name(学院名称(唯一约束))
so(学院专业方向(speciality orientation))

-- 学生和课程关系表(student_course)
stu_no(学生编号)
class_no(课程编号)
results(成绩)
其中class_no(课程编号)和stu_no(学生编号)为联合主键


--  学生和院系关系表(student_department)
stu_no(学生编号)
uc_no(学院编号)
so(学院专业方向)
其中stu_no(学生编号)和uc_no(学院编号)为联合主键

2、具体实现:

(1)首先生成数据库stu_infom,学生表student、课程表class、院系表uc、学生和课程关系表student_course以及学生和院系关系表student_department;

drop DATABASE if exists stu_infom;
CREATE database stu_infom;
use stu_infom;
-- 已经学生和课程之间是多对多关系
-- 学生表(学生编号(主键)、学生名称(唯一约束不为空)、年龄)
drop table if EXISTS student;
create table student (
	stu_no int PRIMARY KEY,
	stu_name VARCHAR(20) not null UNIQUE,
	sex CHAR(1) DEFAULT '男' COM
  • 1
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值