质数属性可以相互依赖吗?
Can prime attributes depend on each other?
我有一个关系 R{id, building, floor, sequence, capacity} 其中:
(building,floor,sequence) -> id
id -> (building,floor,sequence)
(building,floor,sequence) -> capacity
id -> capacity
看来这并没有违反任何范式。但是,即使 id 是主键,id 依赖于 (building,floor,sequence) 真的可以吗,反之亦然?
如果不行,怎么办?
在与多个候选键的任何关系中,它们之间不可避免地存在循环依赖 - 因为任何候选键都可以唯一标识每个元组,并且每个元组都有一个对应于每个候选键的值。
一个键被选为比其他键 "more equal" 并被命名为主键的事实是无关紧要的。 (当我们抽象地谈论时,就像这里一样。某些数据库产品可能具有确实使主键 "more equal" 而不是备用键的功能)
我有一个关系 R{id, building, floor, sequence, capacity} 其中:
(building,floor,sequence) -> id
id -> (building,floor,sequence)
(building,floor,sequence) -> capacity
id -> capacity
看来这并没有违反任何范式。但是,即使 id 是主键,id 依赖于 (building,floor,sequence) 真的可以吗,反之亦然? 如果不行,怎么办?
在与多个候选键的任何关系中,它们之间不可避免地存在循环依赖 - 因为任何候选键都可以唯一标识每个元组,并且每个元组都有一个对应于每个候选键的值。
一个键被选为比其他键 "more equal" 并被命名为主键的事实是无关紧要的。 (当我们抽象地谈论时,就像这里一样。某些数据库产品可能具有确实使主键 "more equal" 而不是备用键的功能)