千家信息网

数据库-事务和关系数据库范式

发表于:2024-11-11 作者:千家信息网编辑
千家信息网最后更新 2024年11月11日,一、数据库数据库是一个按照数据结构来存储和管理数据的系统软件,对数据库进行管理的软件系统称为数据库管理系统。二、关系数据库范式是指在设计关系数据库时,应当遵守设计原则。通过遵守这些规则设计出良好的关系
千家信息网最后更新 2024年11月11日数据库-事务和关系数据库范式

一、数据库

数据库是一个按照数据结构来存储和管理数据的系统软件,对数据库进行管理的软件系统称为数据库管理系统。

二、关系数据库范式

是指在设计关系数据库时,应当遵守设计原则。通过遵守这些规则设计出良好的关系数据库,能够避免数据冗余,节省数据存储空间和保障数据的一致性。

数据库的设计范式主要解决以下的问题

1、强调关系数据库中的列是不可分的

2、减少数据库中数据的冗余

3、关系数据不会因为数据的更新而导致数据的不一致性

4、在进行数据的插入和删除操作时,不会插入和删除异常

5、在进行查询时,所设计数据库的数据库结构合理

关系数据库常见的范式有:第一范式(1NF)、第二范式(2NF)、第三范式(3NF)、第四范式(4NF)、第五范式(5NF)、BCNF、常见的是前3种范式

(1)第一范式(1NF):指的是关系数据库的每一列都是不可分割的基本数据项,同一列中不能有多个值。保证了数据的不重复性。

(2)第二范式(2NF):要满足第二范式必须先满足第一范式。在第二范式中,要求数据库表中的每个行必须可以被唯一的区分,为实现区分通常将表的第一个或多个属性作为行的唯一标识,这个标识称为主键。

在第二范式中,要求行的列值完全依赖于主关键字。

(3)第三范式要求数据库中的表的非主键列之间不能有依赖。也就是说,第三范式主要用于减少数据冗余。


三、事务

事务是指用户在进行数据库操作时的一个数据库操作序列。对于该操作序列中的操作,要么全都执行,要么都不执行。所有的操作时一个整体,不可分割。

与事务相关的概念有事务提交,和事务回滚。事务提交时指将事务中对数据的更新提交到数据库中。如果执行正确则事务结束。否则在发生异常时,事务将回滚,将数据库状态还原到事务提交之前的那个状态,事务回滚主要用于事务失败的情况下,终止事务并还原数据库状态。

事务的特性:

1、原子性:指的是事务是一个逻辑工作单位,其中的操作要么全都执行,要么都不执行。

2、一致性;指的是事务执行的结果必须使数据库从一个一致性状态变为另一个一致性的状态。因此,数据库中只包含事务提交成功的结果,这时的数据库处于一致性状态中。如果在提交事务时,因为故障而停止时, 这些未完成的事务可能有些数据修改已经执行,而有些数据修改还没执行,这时数据库处于不一致状态。

3、隔离性:说明数据事务之间不能相互干扰。即一个事务的内部操作及其数据对其他并发的事务时隔离的,并发执行的事务之间不能相互干扰。

4、持续性:指的是事务一旦提交,其对数据库中的数据的改变是永久的。

四、事务特性被破坏的原因

多个事务并发执行,事务之间的操作交叉执行;

事务在运行过程中被强行终止。

0