|
|
1
34
函数依赖项定义属性之间的函数关系。例如:
函数依赖集可用于合成关系(表)。定义 前三种范式,包括Boyce-Codd范式(BCNF)是根据 给定的一组关系如何表示函数依赖关系。第四和第五正规形式涉及多值依赖(另一个鱼缸)。 这里有一些关于函数依赖性、规范化和数据库设计的免费资源。 学习这些材料时,要准备好锻炼你的大脑和数学技能。 以下是来自不同学术网站的“幻灯片”。。。
以下是学术论文。阅读量大,但值得努力。
如果你真的对这个问题感兴趣,我建议你把钱花在一本好书上 关于关系数据库设计的主题。例如: An Introduction to Database Systems by C.J. Date |
|
|
2
7
函数依赖关系是表列之间的约束。例如,在表person中: SSN | Name | Date of birth | Address | Phone number ------------------------------------------------------------------------ 123-98-1234 | Cindy Cry | 15-05-1983 | Los Angeles | 123-456-7891 121-45-6145 | John O'Neill | 30-01-1980 | Paris | 568-974-2562 658-78-2369 | John Lannoy | 30-01-1980 | Dallas | 963-258-7413 这里,SSN(社会保险号码)列中的值确定name、date of birth、address和phone Number列中的值。这意味着如果我们 SSN列中具有相同值的两行 ,然后在“名称”、“出生日期”、“地址”和“电话号码”列中设置值 会是平等的 . 一个SSN123-98-1234的人总是叫辛迪·克鲁,出生于1983年5月15日,以此类推。这种情况叫做 功能依赖 . 函数依赖的概念被用来定义第二、第三范式和Boyce-Codd范式(BCNF)。 要阅读更多关于函数依赖性和规范化的内容,可以阅读当时著名的学术书籍,如C.J.Date的数据库简介,或者 books by the H. Garcia-Molina, J.Ullman, J.Widom trio . 如果你想要一个不那么正式的方法,我们 starting a series of posts on data normalization on our company blog . |
|
|
3
4
我们可以用一种方式来理解函数依赖性,这种方式假设我们有两个属性,其中一个属性完全依赖于另一个属性,称为函数依赖性。 以现实生活为例。我们知道每个人都有一个社会保险号码,上面写着这个人的名字。假设Frank是一个人,我们想知道此人的社会保险号,但数据库无法帮助处理此信息,因为可能有许多人叫Frank,但我们可以根据社会保险号确定此人的姓名,因此此人的姓名完全取决于社会保险号。 |
|
|
4
3
函数依赖项不是任何正常形式。正规形式是满足某一给定FDs集的关系的一个性质。 不要依赖维基百科或谷歌。网上有太多的错误信息和垃圾。尝试: |
|
5
3
|
|
|
6
0
功能依赖 函数依赖可以定义为关系中的属性之间的关系。函数依赖用于创建Boyce-Codd Normal形式的关系,缩写为BCNF。如果C和D是关系R的属性,而属性C在功能上决定属性D,则两个属性之间的功能依赖关系可以表示为C->D。 示例:在person模式下 人员(身份证、姓名、地址); 在这里,国家身份在功能上决定了人名。因此,函数依赖关系是national-id->name; 为了消除冗余,函数依赖性在关系数据库设计中非常重要。 |