数据库第三次

1. 什么是事务,事务的特性是什么?
   事务是表示一组数据库操作(插入、更新、删除等),这组操作要么全部成功执行,要么全部失败回滚,保证数据库的一致性和完整性。事务具有四个重要特性为ACID特性:

原子性:事务是一个不可分割的操作单元,要么全部执行成功,要么全部失败回滚,不存在部分执行的情况。
一致性:事务执行前后,数据库从一个一致的状态转换到另一个一致的状态。事务的执行不会破坏数据库的完整性约束。
隔离性:多个事务可以并发执行,但它们之间应该是相互隔离的,一个事务的执行不应影响其他事务,直到事务提交后才对其他事务可见。
持久性:一旦事务提交,其所做的修改将永久保存在数据库中,即使系统崩溃,数据也不会丢失。

2. 数据库共定义了几种隔离级别?分别是什么?可避免什么?
   数据库定义了四种隔离级别

   读未提交:允许一个事务读取另一个事务尚未提交的数据。这是最低级别的隔离,可能导致脏读、不可重复读和幻读问题。

   读已提交:允许一个事务读取另一个事务已提交的数据。这样可以避免脏读,但仍可能出现不可重复读和幻读问题。

  可重复读:保证一个事务在同一事务中多次读取相同数据时,数据保持一致。这可以避免脏读和不可重复读,但仍可能出现幻读问题。

   串行化:提供最高的隔离级别,确保事务之间完全隔离,不会出现任何并发问题,包括脏读、不可重复读和幻读。

   不同的隔离级别可避免不同类型的并发问题。串行化隔离级别可以避免所有并发问题,而读未提交隔离级别则几乎不提供隔离,但性能最好。

3. 数据库三范式是什么?
   数据库三范式是减少数据冗余和提高数据的一致性。它包括以下三个范式:

   第一范式(1NF):确保表中的每个列都是原子性的,即每个列不可再分。这意味着每个表格单元格中的数据必须是不可分的。例如,如果有一个包含多个值的列,应将其拆分为多个列。

   第二范式(2NF):在满足第一范式的基础上,确保非主键列完全依赖于表的候选键(候选键是可以唯一标识每一行的一组列)。如果非主键列部分依赖于候选键,就需要将其分离成独立的表,以消除数据冗余。

   第三范式(3NF):在满足第二范式的基础上,确保非主键列之间不存在传递依赖关系。如果一个非主键列依赖于另一个非主键列,应将其分离成独立的表,以避免传递依赖关系。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值