首页 > 编程知识 正文

图书管理系统数据库设计mysql,sql数据库大

时间:2023-05-04 17:10:18 阅读:138332 作者:3959

引入13种范式必须保证数据库设计的合理性。 数据库设计涉及整个系统的体系结构。 随后的开发效率和运行效率相关的数据库设计主要包括设计表结构与表之间的联系如何在合理的数据库结构中合理、冗余小,如何尽量避免插排修改例外,保证数据库设计水平遵循一定的规律。 在关系数据库中这个规则是什么是范式? (NF=NormalForm )范式是指满足某一设计要求的总结。 要设计结构合理的关系数据库,必须满足一定的范式。

引入三大范式

范式的分类

第一范式

第二范式

第三范式

• Boyce Codd范式=NCNF

Boyce和Codd提出的,

比3NF更进了一步

通常被认为是修正的第三范式

第四范式第五范式

各范式依次嵌套包含在内

范式越高,设计质量越高,在现实设计中也越难实现

一般的数据库设计,一旦达到第三范式,就可以避免异常的发生

2第一范式的要求

最基本的范式

数据库表中的每一列都是不可分割的基本数据项,同一列不能有多个值

简而言之,就是每列保持原子性

第一范式的合理柔量基于系统的实际需求

样品

用户表(用户名、家庭地址) )。

用户表(用户名、省、城市、详细地址) )。

系(系名、系主任、高级职称人数) )。

系(系名、系部长、系教授数、系副教授数) )。

3第二正规化要求

在第二种模式中,必须确保数据库表中的每一列都与主键相关。 它不仅仅与主键的一部分相关。 主要用于联盟主键。

这意味着一个数据库表只能保存一个数据,而不能将多个数据保存在同一数据库表中。

样品

学校号码和课程号码用作联合主键

课程名称只取决于课程编号,与课程编号无关

解决

取出学生表

提取到课程体系中

提取选择列表,保管选择记录

4第三正规化要求

避免数据表各列中的数据与主键直接相关,也不间接相关

属性不依赖于其他非主要属性。

示例1 :学生的班级表

例2

订单明细表

5范式的优缺点

结构合理

冗馀度小

尽量避免插入、删除、修改例外

缺点

性能下降

多表查询比单表查询速度慢

数据库的设计应根据当前情况和需求灵活处理。

在实际设计中,总体上要遵循范式理论。

在特定情况下死亡并遵循范式也是不可取的。 因为这可能会降低数据库的效率。 在这种情况下,可以适当地提高冗馀度以提高性能。

示例:

例如,在购物车条目中,除了条目编号、商品编号、商品数量之外,还可以增加经常使用的商品名称、商品价格等

其他

数据库表之间的关系

一对一:学生和学生证

一对多:学生和班级

多对多:学生与课堂

表示数据库表之间关系的方法

使用外键

外键关系实际上表示一对多的关系

1比1 :外键是唯一的

多对多:引入中间表,将一个多对多表示为两个一对多

6总结范式是指导数据设计的规范化理论,可以保证数据库设计的质量

第一范式:字段不能再划分

第二范式:不存在局部依赖

第三范式:不包括传播依赖(间接依赖)

使用范式会减少冗馀,但会降低性能

特定表的设计违反第三范式,可以提高冗馀度,提高性能。

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。