数据库|数据库设计的检验与模型设计

哈喽,你好啊,我是雷工!

本节继续学习记录数据库设计的检验与模型设计,

以下为学习笔记。

01 数据库设计合理性检验

数据库中表结构设计的是否合理是数据库设计的关键。

数据表设计合理的表现:

①:能够避免数据冗余,不会产生大量重复数据;

②:能够避免数据库操作异常;

02 数据库三范式原则

三范式的目标是设计出具有最小冗余的表结构;

2.1、第一范式

目标:第一范式的目标是确保数据表每列是不可再分的最小数据单元;

例如:将住址拆分为省+城市+区域

2.2、第二范式

第二范式应用最广泛,与对象明确原则相对应,要求每个数据表只描述一个实体属性;

如何判断是否满足第二范式:

如果一个关系满足第一范式,并且除了主键之外的其他列,都和主键列相关,那么则满足第二范式;

应用第二范式将与主键不相关的列独立为单独的实体,独立后的实体需要添加主键作为标识列;

2.3、第三范式

第三范式要求实体各属性之间不能具有直接的依赖关系;

满足条件:

如果一个表结构各列之间满足第二范式,除了主键列之外,其他列之间都不具有直接的依赖关系,则满足第三范式;

应用第二、第三范式时,为了保证实体之间存在必要的关系,我们往往需要将独立的实体和当前实体通过外键关联;

03 数据库模型设计

当通过上述三范式原则规范化出表结构以后,可以使用像Viso这类短剑创建数据库模型,然后根据数据库模型实现数据库的创建。

04 三范式原则与数据库性能

4.1、应用第三范式后数据库的变化

①:使实体被最大限度的拆分为若干个小实体;

②:实体数量增多,同时各个实体之间的关系变得复杂,数据被拆分到多个数据表中。

③:数据的查询和统计将变得复杂,会更多使用多表连接查询,如此会适当降低查询性能。

4.2、规范与性能

在进行规范化的同时,还要兼顾考虑数据库的性能

①:应用三范式与数据库的性能要根据项目的实际情况进行权衡。

②:根据项目的实际需求增加或减少冗余列。

05 后记

以上为数据库设计的相关内容,理论基础支撑项目中实践,在实践中在多加练习肯定能熟练掌握数据库;

有记录不当之处欢迎在留言区评论指出,更多话题可以在交流群内沟通交流。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

雷工笔记

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值