数据库设计(关系型数据库)

            1. E-R模型(Entity-Relationship Model) : 
                关系型数据库是建立在实体关系模型(E-R模型 )基础之上,再开展数据库的分析与设计

                在项目开发中,一般会先设计好数据库,数据库开发一般是项目开发的第一步
                a> 实体(Entry)
                    实体设计就好比定义一个类一样,指定从哪些方面来描述对象,一个实体可以转换为数据库中的一个表

                b> 关系(Relationship)
                    描述两个实体之间的对应规则
                    1. 一对一:
                        一个萝卜一个坑
                        学生与指纹
                        员工和工资卡

                    2. 一对多
                        班级与学生
                        客户与订单
                        部门与员工

                    3. 多对一
                        学生与班级
                        员工与部门

                    4. 多对多关系
                      学生与社团
                      运动员与比赛项目

            2. 三范式: 
                为了建立冗余较小、结构合理的数据库,设计数据库时必须遵循一定的规则。在关系型数据库中这种规则就称为范式
                数据库的范式越高,则数据冗余越少,但是会导致查询效率降低,一般数据库设计满足第三范式,就很好了

                a> 第一范式
                    强调的是列的原子性,即列不能够再分成其他几列 

                b> 第二范式
                    首先是 1NF,另外包含两部分内容,一是表必须有一个主键;二是没有包含在主键中的列必须完全依赖于主键
                       依据主键能够推导出其他字段的信息

                c> 第三范式
                    首先是 2NF,另外非主键列必须直接依赖于主键,不能存在传递依赖。即不能存在:非主键列 A 依赖于非主键列 B,非主键列 B 依赖于主键的情况
                    传递依赖: a-->b-->c
                    直接依赖:  a-->b
                              a-->c 

你可能感兴趣的:(数据库设计(关系型数据库))