根据大学教学系统的原型,我构建出如下ER关系图,来学习搭建数据库:

上面共有五个实体,分别是学生,教师,课程,院系,行政班级:

1、其中学生和课程的关系是多对多,即一个学生可以选择多门课程,而一个课程又有多个学生选择。每个学生的每门课程都有一个成绩,所以选课表中应该有成绩字段。

2、课程和教师是多对一关系,即一个教师只教一门课程,而一个课程又由多位老师教授。

3、教师和院系是一对多的关系,即一个教师只属于一个院系,而一个院系可以聘请多位老师。

4、行政班级和院系是多对一的关系,即一个院系有多个行政班级,而一个行政班级只属于一个院系。

5、学生和行政班级是多对一的关系,即一个行政班级有多个学生,而一个学生只属于一个行政班级。

根据以上分析建立数据库:

1、在桌面上新建文本文件,重命名为create.sql,然后图标自动变成如下图:

双击自动使用MySQL Workbench打开,然后编辑如下代码:

1 #########################2 #CREATED BYjiwangbujiu##3 #########################4

5

6

7

8

9 #########################10 ########创建数据库#######11 #########################12 CREATE DATABASEeducation;13

14

15 #########################16 ########使用数据库#######17 #########################18 USEeducation;19

20

21 #########################22 ########新建学生表#######23 #########################24 CREATE TABLEstudents25 (26 stu_id int NOT NULLAUTO_INCREMENT,27 stu_name char(50) NOT NULL,28 stu_grade char(2) NULL,29 stu_sex char(2) NULL,30 cls_id int NULL, ##外键31 stu_birthday date NULL,32 PRIMARY KEY(stu_id)33 )ENGINE =InnoDB;34

35

36 #########################37 ########新建课程表#######38 #########################39 CREATE TABLEcourses40 (41 cou_id int NOT NULLAUTO_INCREMENT,42 cou_name char(50) NOT NULL,43 cou_score char(2) NULL,44 cou_introduce text NULL,45 cou_limit int NULL,46 PRIMARY KEY(cou_id)47 )ENGINE =InnoDB;48

49

50 #########################51 ########新建选课表#######52 #########################53 CREATE TABLEpick_courses54 (55 stu_id int NOT NULL,56 cou_id int NOT NULL, ##外键57 stu_cou_score int NULL,58 PRIMARY KEY(stu_id,cou_id)59 )ENGINE =InnoDB;60

61

62 #########################63 ########新建教师表#######64 #########################65 CREATE TABLEteachers66 (67 tec_id int NOT NULLAUTO_INCREMENT,68 tec_name char(50) NOT NULL,69 dep_id int NULL, ##外键70 PRIMARY KEY(tec_id)71 )ENGINE =InnoDB;72

73

74 ##########################75 ########新建院系表########76 ##########################77 CREATE TABLEdepartments78 (79 dep_id int NOT NULLAUTO_INCREMENT,80 dep_name char(50) NOT NULL,81 dep_introduce text NULL,82 PRIMARY KEY(dep_id)83 )ENGINE =InnoDB;84

85

86 #########################87 ######新建行政班级表#####88 #########################89 CREATE TABLEclasses90 (91 cls_id int NOT NULLAUTO_INCREMENT,92 dep_id int NULL, ##外键93 PRIMARY KEY(cls_id )94 )ENGINE =InnoDB;95

96

97

98 #########################99 #######添加外键关系######100 #########################101 ALTER TABLE students ADD CONSTRAINT fk_students_classes FOREIGN KEY (cls_id) REFERENCESclasses (cls_id);102 ALTER TABLE teachers ADD CONSTRAINT fk_teacher_departments FOREIGN KEY (dep_id) REFERENCESdepartments (dep_id);103 ALTER TABLE classes ADD CONSTRAINT fk_classes_departments FOREIGN KEY (dep_id) REFERENCESdepartments (dep_id);104 ALTER TABLE pick_courses ADD CONSTRAINT fk_pick_courses_courses FOREIGN KEY (cou_id) REFERENCEScourses (cou_id);105 ALTER TABLE pick_courses ADD CONSTRAINT fk_pick_courses_students FOREIGN KEY (stu_id) REFERENCES students (stu_id);

这就是按照本文开始的ER关系图创建教学信息数据库的SQL代码,写完后保存关闭,然后打开软件navicat直接导入sql文件生成数据库。生成的数据库关系图如下:

至此数据库框架就搭建好了,接下来就是往里面录入数据。

mysql构建教学管理系统_MySQL-教学系统数据库设计相关推荐

  1. mysql数据库教学系统设计_MySQL-教学系统数据库设计

    根据大学教学系统的原型,我构建出如下ER关系图,来学习搭建数据库: 上面共有五个实体,分别是学生,教师,课程,院系,行政班级: 1.其中学生和课程的关系是多对多,即一个学生可以选择多门课程,而一个课程 ...

  2. JAVA多媒体网络教学计算机毕业设计Mybatis+系统+数据库+调试部署

    JAVA多媒体网络教学计算机毕业设计Mybatis+系统+数据库+调试部署 JAVA多媒体网络教学计算机毕业设计Mybatis+系统+数据库+调试部署 本源码技术栈: 项目架构:B/S架构 开发语言: ...

  3. JAVA计算机毕业设计C语言教学辅导网站Mybatis+系统+数据库+调试部署

    JAVA计算机毕业设计C语言教学辅导网站Mybatis+系统+数据库+调试部署 JAVA计算机毕业设计C语言教学辅导网站Mybatis+系统+数据库+调试部署 本源码技术栈: 项目架构:B/S架构 开 ...

  4. java毕业设计在线教学评比平台Mybatis+系统+数据库+调试部署

    java毕业设计在线教学评比平台Mybatis+系统+数据库+调试部署 java毕业设计在线教学评比平台Mybatis+系统+数据库+调试部署 本源码技术栈: 项目架构:B/S架构 开发语言:Java ...

  5. Java计算机毕业设计天津城建大学教室查询预约管理系统源码+系统+数据库+lw文档

    Java计算机毕业设计天津城建大学教室查询预约管理系统源码+系统+数据库+lw文档 Java计算机毕业设计天津城建大学教室查询预约管理系统源码+系统+数据库+lw文档 本源码技术栈: 项目架构:B/S ...

  6. 计算机毕业设计Java-ssm毕业生就业信息管理系统源码+系统+数据库+lw文档

    计算机毕业设计Java-ssm毕业生就业信息管理系统源码+系统+数据库+lw文档 计算机毕业设计Java-ssm毕业生就业信息管理系统源码+系统+数据库+lw文档 本源码技术栈: 项目架构:B/S架构 ...

  7. java计算机毕业设计同学录管理系统源码+系统+数据库+lw文档+mybatis+运行部署

    java计算机毕业设计同学录管理系统源码+系统+数据库+lw文档+mybatis+运行部署 java计算机毕业设计同学录管理系统源码+系统+数据库+lw文档+mybatis+运行部署 本源码技术栈: ...

  8. java计算机毕业设计南通大学福利发放管理系统源码+系统+数据库+lw文档+mybatis+运行部署

    java计算机毕业设计南通大学福利发放管理系统源码+系统+数据库+lw文档+mybatis+运行部署 java计算机毕业设计南通大学福利发放管理系统源码+系统+数据库+lw文档+mybatis+运行部 ...

  9. Java计算机毕业设计糖果销售管理系统源码+系统+数据库+lw文档

    Java计算机毕业设计糖果销售管理系统源码+系统+数据库+lw文档 Java计算机毕业设计糖果销售管理系统源码+系统+数据库+lw文档 本源码技术栈: 项目架构:B/S架构 开发语言:Java语言 开 ...

最新文章

  1. 浅谈产品的用户画像:它并不是万能的
  2. iOS上相见恨晚的6个APP
  3. 分享几个Java面试小技巧,建议收藏!
  4. idea补全代码快捷键
  5. 算法题目中经典问题(易错点)
  6. Google 出的 Guava 是个什么鬼
  7. 牛客13584 日历中的数字
  8. linux 扫描mipi设备,VS-RK3399 在linux系统下面调试Mipi camera接口介绍
  9. CMM3上的集成软件管理
  10. oracle数据库论文参考文献,ORACLE数据库管理研究
  11. 如何更改微信标签名字_微信标签怎么设置?有什么用?
  12. 中国消费品领域知名的调查研究咨询公司信息
  13. 手动删除文件夹exe病毒并恢复原来文件夹
  14. 中国25张金融牌照大全
  15. php对比两张数据表,【后端开发】PHP比较两个表不同数据
  16. 我的世界服务器如何修复报错,我的世界18w30a发布 修复1.13众多BUG
  17. Android apk安装过程
  18. C语言练习——提高篇
  19. MySQL数据库——语句
  20. 人工智能轨道交通行业周刊-第8期(2022.8.1-8.7)

热门文章

  1. python cartopy绘制北极/python绘图函数封装/python气象绘图
  2. 马尾综合征患者如果出现这种症状,说明症状在加重?
  3. html5+css3圆角图文展示卡片层叠滑动切换js特效
  4. 淘宝直播h5页面js逆向解析
  5. 国外php开源采购系统,国外PHP开源CMS系统一览
  6. 芯海科技、芯原科技数字IC
  7. 欧盟立法者希望将ICO纳入新的众筹规则
  8. 【日常】怀念儿童时的多啦A梦
  9. 企业网管管理员、桌面运维 系统管理员 有出路吗?
  10. BAPI for BP Relationship Data Mass Maintenance (UKM_BP)