数据库设计(二)

目录

规范化理论:

       超键:唯一标识元组

        候选键:在超键的基础上消除冗余属性

        主键(主属性):候选键中任选一个,并且有且只有一个

        外键(表示联系):如班级编号

范式:

BCNF(BC范式)

数据库物理设计和运行维护:

物理结构设计:


规范化理论:

                超键、候选码、主键和外键的概念

       超键:唯一标识元组

                                        比如说在一个班级中有两个重名,年龄和性别都相同的两个人,超键可以用于区分

       这里的超键可以是:学号、身份证号、(学号+姓名+性别)、(身份证号+姓名)

        候选键:在超键的基础上消除冗余属性

                                       超键可以是学号、身份证号、(学号+姓名+性别)等等,但是实际上学号,或者是身份证号就足以区分了,那么学号+姓名+性别中的姓名和性别就相当于是冗余属性,所以消除之后就是候选键了。比如候选键可以是:学号、身份证号

        主键(主属性):候选键中任选一个,并且有且只有一个

                                        在候选键中任选一个,则主键可以是学号,也可以是身份证号

        外键(表示联系):如班级编号

范式:

                来自英文Normal form, 简称NF。要想设计一个好的关系,必须使关系满足一定的约束条件,此范式已经形成了规范,分成好几个等级,一级比一级要求的严格。满足这些规范的数据库是简介的、结构明晰的,同时,不会发生插入(insert)、删除(delete)和更新(update)操作异常、。反之则是乱七八糟,不仅给数据库的编程人员制造麻烦,而且面目可憎,可能存储了大量不需要的冗余信息

                关系式数据库有六种范式:第一范式(1NF)、第二范式(2NF)、第三范式(3NF)、巴斯.科德范式(BCNF)、第四范式(4NF)和第五范式(5NF,又称完美范式)。满足最低要求的范式是第一范式(1NF)。在第一范式的基础上进一步满足更多规范要求的称为第二范式(2NF),其余范式依次类推。一般来说,数据库只需满足第三范式(3NF)或者BC范式就行了

               

BCNF(BC范式)

        BCNF(巴斯科德范式)也被称为修正的第三范式,或者说是扩充、扩展和加强的第三范式

        为什么要叫修正的第三范式,而不叫第四范式呢?是因为第三范式有所泄露,BCNF用来修补这个缺漏。漏缺了什么呢?

        第三范式的要求是每个非主属性都要直接依赖于主属性,不能存在非主属性间相互依赖的情况,但是如果除了主属性以外还有一个候选码呢?

        主属性肯定能和候选码一一对应的,那主属性之间会存在相互依赖的情况吗,这样不是又会造成冗余?

        若关系模式R属于3NF,BC范式规定主键字段之间的关系不能被耦合到每个元祖实例中,即存在主键到主键再到非主键的传递依赖关系。

数据库物理设计和运行维护:

                在数据库正式投入使用之后,需要改善数据库性能,维护数据库的安全和完整性。数据库系统中可能存在隐患的比较深的问题,在数据库的开发和测试时没有发现此问题,但是在后期的投入使用中,问题显现出来了,对于此类问题,就需要对数据库进行维护了。

                数据库设计结束后进入数据库的实施与维护阶段,主要工作如下:

                        1、数据库实现阶段的工作:建立实际数据路结构,试运行,装入数据。

                        2、其他有关我的设计工作:数据库的重新组织设计,故障恢复方案设计,安全性考虑,事务控制,

                        3、运行于维护阶段的工作:数据库的日常维护(安全性、完整性控制、数据库的转储和恢复),性能的监督、分析与改进,扩充新功能,修改错误

物理结构设计:

                物理结构设计:是指逻辑模型在计算机中的具体实现方案。数据库在物理设备上的存储结构与存取方法称为数据库的物理结构,对于一个给定的逻辑数据模式选取一个最适合应用环境的物理结构的过程,称为数据库的物理设计,通常对于关系数据库物理设计的主要内容包括为关系模式选择存取方法、设计关系、索引等数据库文件的物理结构

                物理结构设计将逻辑结构实施到具体环境中,其依赖于给定的DBMS和硬件系统,就是把之前的分析在硬件系统和数据库管理系统上具体的实现。

                如果各阶段发现不能满足用户需求时,需要返回到前面适当的阶段,进行必要的修正,经过不断地精益求精,直到各种性能都能满足用户的需求为止

猜你喜欢

转载自blog.csdn.net/m0_65334415/article/details/128268188
今日推荐