- 登陆后保存服务器返回的
csrftoken
到localstore 创建axios时添加
X-CSRFTOKEN
头部123var instance = axios.create({headers:{'X-CSRFTOKEN':localStorage.getItem('csrftoken') }})解决
Hexo∎
一.数据库设计过程
- 需求分析
- 概念设计
- 逻辑设计
- 模式求精
- 物理设计
- 应用与安全设计
二.E-R模型基本概念(实体集,联系集,属性)
1. 实体与实体集
2. 属性及其分类
- 简单属性,复合属性
- 单值属性,多值属性
- 派生属性
3. 联系与联系集
- 多联系:各实体之间可以有多种不同的联系.
- 实体的角色:当同一个实体集在一个联系集中参与的次数大于一次,且每次以不同的角色参与时,要用显示的角色名定义一个实体参与联系的方式.
- 联系集的度:联系集的实体集的数目.
三.约束
1. 映射约束
- 一对一
- 一对多
- 多对一
- 多对多
2. 码约束
①实体集的码
- 超码:唯一标识一个实体的一个或多个属性的集合.
- 候选码:一个超码的任意真子集都不能成为超码,这样最小的超码成为候选码.
- 主码:从多个候选码中选择一个作为实体集的主码.
②主码选择原则
- 选择属性长度最短的候选码
- 尽量选择包含单个属性的码,而不是复合候选码
- 选择在数据库系统生命周期内属性值最少变化的候选码
- 选择在数据库系统生命周期内更可能包含唯一值的候选码
③联系集的码
每一个联系集必须存在候选码并选择其中的一个候选码作为主码
一对一联系集:主码可以使用任何一方实体集的主码
一对多(多对一)联系集:主码由”多”的一方实体集的主码组成
多对多联系集:主码由参与联系集中所有实体集的主码组成
④联系集的属性安置
一对一联系集的属性:可安置在任一边的实体集上
一对多联系集的属性:可安置于联系集上,也可安置在多的那一边的实体集上
多对多联系集的属性:只能安置在联系集上,不能放到相关联的实体集上
3. 依赖约束
依赖实体集:联系中的一种实体的存在依赖于该联系集中联系的存在
如:销货单实体集与商品销售联系集
弱实体集:联系中的一种实体的存在依赖于其他实体集中实体的存在
如:开课班实体集与课程实体集
4. 参与约束
实体集与联系集:
- 全部参与
- 部分参与
5. 多值联系
同一个给定的联系集中,相关联的相同实体之间可能存在多个联系,如客户与银行之间多对多贷款联系集,及同时一个银行可以向多个客户发放贷款的一对多联系集.
四.弱实体集
某些实体集的属性不足以形成主码,他们必须依赖于其他实体集的存在而存在.
部分码:用来标识弱实体的属性
弱实体集中的实体是由标识实体集中的主码与其部分码共同标识.
五.扩展E-R特征
1. 类的层次
E-R模型使用实体集的继承和ISA联系来描述这种概念上的继承.
ISA关系可以从两个方向进行设计:
①自上而下,先设计父类实体集,再将父类具体化为其他子类
②自下而上,先具体化子类实体集,再将子类中的共同属性提取出来,泛化为父类
2. 聚合
聚合是一种抽象,它将一个联系集及其相关联的实体集抽象为一个联系实体集对待,然后建立该联系实体集与其他实体集之间的联系集.
六.E-R建模问题
E-R建模的基本原则
1.忠实性: 设计应忠实于应用需求
2.简单性: 除非有绝对需要,否则不要在设计中增加更多成分
3.避免冗余: 一个对象只存放在一个地方
4.选择实体集还是属性:
①不可再分
②不能和其他实体相联系
满足上述两条规则均可作为属性对待
5.选择实体集还是联系集:
实体集一般对应现实生活中实际存在的事物
联系集一般对应一种动作
6.多元联系转化为二元联系:
依赖约束的建模
多值联系的建模
- 将多值联系建模为弱实体集
- 将多值联系建模为依赖实体集
E-R模型的表示
- 实体集:矩形
- 弱实体集:双矩形
- 属性:椭圆
- 多值属性:双椭圆
- 派生属性:虚线椭圆
- 联系(集):菱形
- 标识联系集:双菱形
- 属性与实体之间用连线表示
- 加下划线的属性为实体集的主码
- 虚下划线表示弱实体的部分码
- “→”指向参与联系集中”一”方实体集,”-“指向参与联系集”多”方实体集
- 联系实体集:带菱形的矩形