Poi*_*int 3 database-theory relational-theory
我正在斯坦福开放课件上做一门关系设计课程。我理解为什么函数依赖以这种方式命名 - A->B 意味着在指定 A 时指定了 B,或者换句话说,B 的值在功能上取决于 A 的值。但我想不出一个多值依赖项以这种方式命名的简单原因。理解这一点将使记住和使用这个概念变得更加容易。
多值依赖 A->->B 意味着 A 的每个值都决定了B 的一组值(而不是函数依赖中的 B 的单个值)。
例如,假设programmers
有一个 attributeprogrammer-id
和一个 attribute known-language
,并且每个程序员都知道多种语言,那么您就有了多值依赖:
程序员 ID ->-> 语言知识
因此,假设 program-id 7 的程序员知道 SQL 和 Ruby,这意味着在一个表中,你有两个属性programmer-id
和know-language
,每次有 program-id 7 时,必须有两个不同的行,一个是语言'SQL ' 和一个使用 Ruby 语言,并且所有其他属性都相等:
programmer-id know-language other-attribute1 other-attribute2 ...
7 SQL XXX YYY
7 Ruby XXX YYY
8 Java AAA BBB
...
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
580 次 |
最近记录: |