数据库范式
来源:互联网 发布:上海绿茶网络vip 编辑:程序博客网 时间:2024/06/01 16:16
1.第一范式:数据库的字段是单一属性,不可再分。
解释:
不能是复合属性,如果存在,应该拆分为多个属性
不能是多值属性,如果存在,应该建立一个实体,而让此属性与其存在1对多的关系)
不能是重复属性
2.第二范式:任何非关键字段不能部分依赖任一侯选关键字(即必须完全依赖)。
解释:
表中必须存在侯选关键字,即每一行不同于其他任一行,是惟一区分的
任何非关键字段不能依赖于侯选关键字的一部分
3.第三范式:任何非关键字段不能传递依赖任一侯选关键字
解释:
非关键字字段必须直接依赖任一侯选关键字
非关键字段C不能依赖非侯选关键字B,因为样会形成传递依赖:侯选关键字A=>B=>C,因为这时的B往往是外键,即其他表的主键,
也就是说表中不能含有其他表的非主属性
4.BC范式:任何字段都不能传递依赖任一侯选关键字
解释:
与第三范式相比,一个是“任何非关键字段不能”,一个是“任何字段不能”,显然更严格了
侯选关键字或其部分字段不能传递依赖其他的侯选关关键字
注释:
侯选关键字:又叫侯选码,惟一标识一行数据,其真子集不能是侯选关键字,一个表可以存在多个侯选关键字,如用户表的username,userid
主关键字:又叫主键,主码,被选中的用来区分其它行的侯选关键字,一个表只有一个主关键字
部分依赖:(A,B)->C,D,如A->C,则C部分依赖A
传递依赖:A->B->C,则C传递依赖A
解释:
不能是复合属性,如果存在,应该拆分为多个属性
不能是多值属性,如果存在,应该建立一个实体,而让此属性与其存在1对多的关系)
不能是重复属性
2.第二范式:任何非关键字段不能部分依赖任一侯选关键字(即必须完全依赖)。
解释:
表中必须存在侯选关键字,即每一行不同于其他任一行,是惟一区分的
任何非关键字段不能依赖于侯选关键字的一部分
3.第三范式:任何非关键字段不能传递依赖任一侯选关键字
解释:
非关键字字段必须直接依赖任一侯选关键字
非关键字段C不能依赖非侯选关键字B,因为样会形成传递依赖:侯选关键字A=>B=>C,因为这时的B往往是外键,即其他表的主键,
也就是说表中不能含有其他表的非主属性
4.BC范式:任何字段都不能传递依赖任一侯选关键字
解释:
与第三范式相比,一个是“任何非关键字段不能”,一个是“任何字段不能”,显然更严格了
侯选关键字或其部分字段不能传递依赖其他的侯选关关键字
注释:
侯选关键字:又叫侯选码,惟一标识一行数据,其真子集不能是侯选关键字,一个表可以存在多个侯选关键字,如用户表的username,userid
主关键字:又叫主键,主码,被选中的用来区分其它行的侯选关键字,一个表只有一个主关键字
部分依赖:(A,B)->C,D,如A->C,则C部分依赖A
传递依赖:A->B->C,则C传递依赖A
- 数据库范式 三范式
- 数据库范式
- 数据库范式
- 数据库范式
- 数据库范式
- 数据库范式
- 数据库范式
- 数据库范式
- 数据库范式
- 数据库范式
- 数据库---范式
- 数据库范式
- 数据库范式
- 数据库范式
- 数据库范式
- 数据库范式
- 数据库范式
- 数据库范式
- Windows Phone 7 Dev 短信_电话_邮件
- 正确的Linux菱形乱码修改方法
- <<<I、O概述及字符流基本操作>>>
- 数学之美系列十:有限状态机和地址识别
- Activity之屏幕方向
- 数据库范式
- 解决PowerDesigner 16 Generate Datebase For Sql2005/2008 对象名sysproperties无效的问题
- sql语句将excel数据导入到表
- 《HT06,Tagging Papper, Taxonomy,Flickr,Academic Article,ToRead》
- PL/SQL 集合的初始化与赋值
- 数学之美系列十一:Google 阿卡 47 的制造者阿米特.辛格博士
- 数学之美系列十二:余弦定理和新闻的分类
- UltraEdit v18及注册
- 警惕程序优化的七大陷阱