1、关系的三个范式是什么?
关系的三个范式(Normal Forms)是数据库设计中的核心原则,用于减少数据冗余并提高数据的一致性和完整性。
1NF:确保数据原子性。
示例: 假设有一个存储订单信息的表 Orders,包含以下字段:
OrderID(订单ID)
Customer(客户)
Products(产品列表,用逗号分隔,如 "手机, 耳机, 充电器")
问题:Products 字段不是原子的,包含多个值,违反 1NF。 解决方案:拆分为多行,每行对应一个产品。
OrderID
Customer
Product
1001
张三
手机
1001
张三
耳机
1001
张三
充电器
2NF:满足 1NF,消除部分依赖,确保非主键字段完全依赖主键。
示例: 假设有一个订单明细表 OrderDetails,主键是 OrderID + ProductID,但包含以下字段:
OrderID
ProductID
ProductName(产品名称)
Quantity(数量)
问题:ProductName 仅依赖 ProductID,而不是完整的主键 OrderID + ProductID,存在部分依赖。 解决方案: