10分钟写一个学生课程管理系统
创建数据库(建议使用mysql8数据库)
标题要大,其实十分钟可能都没法将本文仔细看完。10分钟其实指的是实际操作,至于真正地生成所有的代码需要做的可能1分钟都不到。
这个demo仅有几个数据表,其中3个表:学生、课程和选课关系表,参考自《数据库系统概论》第五版 +学习笔记总目录中的“chp3-1.ppt”第30、31、32页。
另外,表、字段都以下划线进行了分割。原因是个人习惯,另外也是为了统一管理,因为前后端通讯时会统一使用下划线规则(ajax规则),而后端java内部会使用驼峰规则,驼峰和ajax规则使用下划线进行区分会更简单易记。
CREATE TABLE sc_dept
( d_no VARCHAR(9) primary key comment '班级编号',
d_name VARCHAR(20) UNIQUE comment '班级名称',
updated_time DATETIME DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP comment '更新时间',
updated_by VARCHAR(45) comment '更新人'
) comment '班级';
CREATE TABLE sc_student
( s_no VARCHAR(9) primary key comment '学号',
s_name VARCHAR(20) UNIQUE comment '学生姓名',
s_password VARCHAR(45) comment '密码',
s_sex VARCHAR(2) comment '性别',
s_birthday DATETIME comment '生日',
d_no VARCHAR(9) comment '班级编号',
updated_time DATETIME DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP comment '更新时间',
updated_by VARCHAR(45) comment '更新人',
FOREIGN KEY (d_no) REFERENCES sc_dept(d_no)
) comment '学生';
CREATE TABLE sc_teacher
( t_no VARCHAR(9) primary key comment '教师编号',
t_name VARCHAR(20) UNIQUE comment '教师姓名',
t_password VARCHAR(45) comment '密码',
t_sex VARCHAR(2) comment '性别',
t_birthday DATETIME comment '生日',
t_is_admin SMALLINT comment '是否为管理员',
updated_time DATETIME DEFAULT CURRENT_TIMESTAMP ON

550

被折叠的 条评论
为什么被折叠?



