学生门户系统数据库

时间:2019-12-26 20:54:53

标签: sql

我正在尝试建立一个学生可以登录并管理与学校有关的东西的系统。信息(针对我的学校项目)。这是我系统中每个角色应具备的能力。

学生: 查看老师设定的自己的作业 查看他们的成绩,由他们的老师再次输入 查看考试时间表,该时间表将是pdf文件(每年一个),由管理员输入 查看由管理员(按年份分组)输入的旅行和事件

老师: 添加/编辑/删除他们班级的作业 为每个学生添加成绩

管理员: 管理用户(添加/删除/编辑)和角色 为每个年度组添加考试时间表 添加每个年度组的旅行和事件

但是,我正在努力或不理解。首先,我不了解我的用户表(具有ID,用户名,密码和角色)如何链接到包含有关学生和教师信息的表。另一件事是,我上面需要听的所有东西都需要一张桌子吗? (如时间表,行程等),以及是否需要管理表。

这是我的数据库:


-表mydbusers


如果不存在mydbusers创建表({   id INT NOT NULL AUTO_INCREMENT,   username VARCHAR(45)NULL,   password VARCHAR(45)NULL,   roles_id INT NOT NULL,   主键(id),   索引fk_users_roles_idxroles_id ASC),   唯一索引username_UNIQUEusername ASC),   约束fk_users_roles     外键(roles_id)     参考文献mydbrolesid


-表mydbroles


如果不存在mydbroles创建表({   id INT NOT NULL AUTO_INCREMENT,   role_name VARCHAR(10)NULL,   ``VARCHAR(45)NULL,   主键(id),   唯一索引role_name_UNIQUErole_name ASC))


-表mydbstudent


如果不存在mydbstudent创建表({   id INT NOT NULL AUTO_INCREMENT,   name VARCHAR(45)NULL,   surname VARCHAR(45)NULL,   dob日期为空,   yeargroup_id INT NOT NULL,   主键(id),   索引fk_student_yeargroup1_idxyeargroup_id ASC),   约束fk_student_yeargroup1     外键(yeargroup_id)     参考文献mydbyeargroupid


-表mydbteacher


如果不存在mydbteacher创建表({   id INT NOT NULL,   name VARCHAR(45)NULL,   surname VARCHAR(45)NULL,   dob VARCHAR(45)NULL,   subject_id INT NOT NULL,   主键(id),   索引fk_teacher_subject1_idxsubject_id ASC),   约束fk_teacher_subject1     外键(subject_id)     参考文献mydbsubjectid


-表mydbadmin


如果不存在mydbadmin创建表({   id INT NOT NULL,   name VARCHAR(45)NULL,   surname VARCHAR(45)NULL,   dob VARCHAR(45)NULL,   主键(id


-表mydbyeargroup


如果不存在mydbyeargroup创建表({   id INT NOT NULL AUTO_INCREMENT,   description VARCHAR(100)NULL,   主键(id


-表mydbsubject


如果不存在mydbsubject创建表({   id INT NOT NULL,   description VARCHAR(45)NULL,   主键(id) 引擎= InnoDB;


-表mydbstudent_class


如果不存在mydbstudent_class创建表({   student_id INT NOT NULL,   class_id INT NOT NULL,   主键(student_idclass_id),   索引fk_student_has_class_class1_idxclass_id ASC),   索引fk_student_has_class_student1_idxstudent_id ASC),   约束fk_student_has_class_student1     外键(student_id)     参考mydbstudentid)   约束fk_student_has_class_class1     外键(class_id)     参考文献mydbclassid


-表mydbclass


如果不存在mydbclass创建表({   id INT NOT NULL AUTO_INCREMENT,   classtime DATETIME NULL,   teacher_id INT NOT NULL,   yeargroup_id INT NOT NULL,   subject_id INT NOT NULL,   主键(id),   索引fk_class_teacher1_idxteacher_id ASC),   索引fk_class_yeargroup1_idxyeargroup_id ASC),   索引fk_class_subject1_idxsubject_id ASC),   约束fk_class_teacher1     外键(teacher_id)     参考mydbteacherid)   约束fk_class_yeargroup1     外键(yeargroup_id)     参考mydbyeargroupid)   约束fk_class_subject1     外键(subject_id)     参考文献mydbsubjectid

enter image description here

0 个答案:

没有答案