根据大学教学系统的原型,我构建出如下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. JAVA多媒体网络教学计算机毕业设计Mybatis+系统+数据库+调试部署

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

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

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

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

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

  4. Java计算机毕业设计电影网站系统设计源码+系统+数据库+lw文档

    Java计算机毕业设计电影网站系统设计源码+系统+数据库+lw文档 Java计算机毕业设计电影网站系统设计源码+系统+数据库+lw文档 本源码技术栈: 项目架构:B/S架构 开发语言:Java语言 开 ...

  5. java计算机毕业设计某日杂商店进销存管理系统设计源码+系统+数据库+lw文档+mybatis+运行部署

    java计算机毕业设计某日杂商店进销存管理系统设计源码+系统+数据库+lw文档+mybatis+运行部署 java计算机毕业设计某日杂商店进销存管理系统设计源码+系统+数据库+lw文档+mybatis ...

  6. java计算机毕业设计网上拍卖系统设计源码+系统+数据库+lw文档+mybatis+运行部署

    java计算机毕业设计网上拍卖系统设计源码+系统+数据库+lw文档+mybatis+运行部署 java计算机毕业设计网上拍卖系统设计源码+系统+数据库+lw文档+mybatis+运行部署 本源码技术栈 ...

  7. mysql构建教学管理系统_MySQL-教学系统数据库设计

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

  8. mysql添加自团_Mysql入门基础 数据库创建篇

    1.创建数据表---基础(高手跳过) 正统方法:create [TEMPORARY] table 表名 [if not exists] (创建的列项定义) [表的选项] [分区的选项];#正统的创建方 ...

  9. mysql 定期清理表数据_mysql 定期清理表数据库

    zabbix数据库备份整理 zabbix数据库备份整理 zabbix数据库备份整理 zabbix的所有操作都是存在数据库里,在数据库里都会有对应的表,所以对zabbix备份,只需备份数据库就行了. 采 ...

最新文章

  1. 一文详解,jvm内存分代与垃圾回收原理
  2. Delphi 写服务程序
  3. Python数据分析学习笔记
  4. 【libsvm 错误使用mex】
  5. data spring 指定时区_Spring 框架基础(05):Mvc架构模式,执行流程详解
  6. 2013\Province_Java_A\2.振兴中华
  7. Fast Matrix Factorization for Online Recommendation with Implicit Feedback论文代码分析
  8. linux内核的外部接口函数,linux内核中GPIO的使用(二)--标准接口函数
  9. RocketMQ(五)——工作原理
  10. 三星官方回应“7nm EUV良率”:内容与事实完全不符
  11. port security violation protect retrict shutdown 之具体解释
  12. JAVA 连等赋值问题
  13. M3U8下载,直播源下载,FLASH下载(三)-直播源下载
  14. 个人电脑检查显示的项目
  15. 各种文件类型对应 contentType
  16. Win10 重置IE上网
  17. 基于STM32设计的WiFi语音播报日程表
  18. 鹿客、小米、智汀、德施曼这几款热门智能门锁测评:谁最安全?谁最便捷?
  19. Oracle JDK | 迅雷内置浏览器解决 Java 下载需要登录 不能直接复制链接 直接下载慢
  20. ubuntu重新安装驱动

热门文章

  1. CCCP(convex-concave procedure)优化算法的一些理解
  2. STM32 I2C驱动0.96寸OLED屏
  3. ORA-3136错误解决
  4. 优化算法之指数加权平均详解
  5. 智能电视以及机顶盒屏幕截取的方法
  6. 人类最常见的25个认知偏误(一)
  7. 有限等距性质RIP理解
  8. JavaScript BOM和DOM部分
  9. html账号输入框整体透明,HTML在透明输入框里添加图标的实现代码
  10. 1051 复数乘法(JAVA)