数据库三范式:
1NF:属性原子性,每一个属性都是不可再分的;
2NF:在 1NF 的基础上,非关键字段必须依赖唯一的主键;
3NF:在 2NF 的基础上,表中每一列都和主键直接相关,不存在传递依赖
数据库中的键:
主键 :数据表中任意两条记录不能完全相同,存在某个字段能唯一区分出不同的记录,这个字段被称为主键。
超键:在关系中能唯一标识元组的属性集称为关系模式的超键.
候选键:不含有多余属性的超键称为候选键,也叫最小超键。通常我们会从候选键中选择一个作为主键。
外键:一对多关系中位于关系多端的列就是外键。外键可以包含重复值。
举个栗子!
有两张表:
SaleOrderlines(Saleorder_id, Sale_staff_name, Product_id, Product_price, totalPrice)
Product_info(Product_id, Product_name, Product_price)
在第一个表中:
主键:Saleorder_id
超键:所有含有Saleorder_id属性的属性集都可以是超键
候选键:Saleorder_id
外键:Product_id(在这张表中,这个外键的值可以重复)
第二个表中:
主键:Product_id
超键:所有含有Product_id属性的属性集合
候选键:Product_id
外键:没有