### 1/ER工具
1、思维导图XMind
2、亿图
3、mysql-workbench-community
4、navicat
XMind和亿图可以画ER模型图,mysql-workbench-community和navicat可以出关系模型
备注:软件请自行学习熟悉怎么使用
### 2/ER模型与关系模型
#### (1)ER模型
ER模型基本元素:
1、实体:是一个数据对象,指应用中可以存在的事物,画图时,方框表示实体
2、联系:表示一个或多个实体之间的关联关系,菱形用来表示联系
3、属性:实体的某一特性称为属性,椭圆表示属性
##### (2)`实例2:ER模式`
![](https://box.kancloud.cn/b0c7b28d3e73ad78805207b681c732cb_1914x1008.jpg)
#### (3)关系模型
关系模型:用二维表的形式表示实体和实体间联系的数据模型
关系模型中的字段相当于ER模型里面的属性,字段值称为属性值
属性:一般用大写字母A,B,C,D,E,F...来表示
属性值:一般用小写字母a,b,c,d,e,f...来表示
##### (4)实例2:关系模式
| A | B | C | D | E | F | G |
| --- | --- | --- | --- | --- | --- | ---|
| a1 | b1 | c1 | d1 | e1 | f1 | g1 |
| a2 | b2 | c2 | d2 | e2 | f2 | g2 |
| a3 | b3 | c3 | d3 | e3 | f3 | g3 |
#### (5)ER模型到关系模型的转换
实体类型的转换:将每个实体类型转换成一个关系模式,实体的属性是关系模式的属性
**联系类型的转换:**
``实体间联系是1:1,可以在两个实体类型转换成的两个关系模式中任意一个关系模式的属性 中加入另一个关系模式的键(作为外键)和联系类型的属性``
``实体间联系是1:N,在N端实体类型转换成的关系模式中加入1端实体类型的键(作为外键)和联系类型的属性。``
``实体间联系是M:N,把联系类型也转换成关系模式,其属性为两端实体类型的键(作为外 键)加上联系类型的属性,而键为两端实体键的组合。``
#### (6)实例:
##### 教学管理的ER图转换成关系模式集
教学管理的ER图
![](https://box.kancloud.cn/e5a358de160efb39c51482bd18f066fc_1900x1044.jpg)
第一步:把三个实体类型转换成三个模式:
系(系编号,系名,电话)
教师(教工号,姓名,性别,职称)
课程(课程号,课程名,学分)
第二步: 对于1:1联系“主管”,在“系”模式中加入教工号(教工号为外键,用波浪线表示);
对于1:N联系“聘用”,在“教师”模式中加入系编号和聘期两个属性(系编号为外 键);
对于1:N联系“开设”,在“课程”模式中加入系编号(系编号为外键) 得到的三个模式如下:
系( 系编号 ,系名,电话,主管人教工号)
教师( 教工号 ,姓名,性别,职称,系编号,聘期)
课程( 课程号 ,课程名,学分,系编号)
第三步:对于M:N联系“任教”,则生成一个新的关系模式:任教( 教工号 ,课程号,教材)
第四步:整合后关系模式如下:
系( 系编号 ,系名,电话,主管人教工号)
教师( 教工号 ,姓名,性别,职称,系编号,聘期)
课程( 课程号 ,课程名,学分,系编号)
任教(教工号,课程号,教材)
- 第一部分 每日内容
- 第一天 需求分析
- 第二天 ER图
- 第三天 git
- 第四天 laravel基础串讲
- 第五天 ORM
- 第六天 项目的后台模板、登录模块、表单验证
- 第七天 用户模块
- 7.1登录中间件
- 7.2用户的添加
- 7.3用户的查询
- 7.4用户的修改
- 7.4用户的删除
- 第八天 分类模块
- 8.1分类表和分类模型
- 8.2分类排序
- 第九天 文件模块
- 9.1百度编辑器
- 9.2文件上传
- 9.3阿里OSS
- 9.4七牛云
- 第十天 网站配置模块
- 10.1网站配置表结构
- 10.2添加网站配置
- 10.3将数据表中的配置信息写入config配置文件中
- 10.4浏览配置信息
- 第十一天 网站前台
- 11.1共享变量
- 11.2前台首页
- 第十二天 RBAC
- 第十三天 手机验证码
- 13.1手机验证码
- 13.2发送验证邮件
- 13.3密码找回
- 第十四天 实用组件
- 第十五天 服务器方面
- LNMP
- MySQL主从
- laravel主从
- 负载均衡
- 第二部分 所需模块
- 1登录模块
- 2注册模块
- 3无限极分类模块
- 4图片管理模块
- 5日志模块
- 6标签模块
- 7购物车模块
- 8验证码模块
- 9支付模块
- 10秒杀模块
- 11验证码模块
- 12消息队列模块
- 13ckplayer播放器
- 14美洽客服插件
- 15markdown和百度编辑器