Database 涉及空集的函数依赖关系

Database 涉及空集的函数依赖关系,database,database-design,functional-dependencies,Database,Database Design,Functional Dependencies,我试图用FDs来理解空集的概念。说我有 R(A,B,C,D) A-> E B-> C B-> D 其中E是空集,据我所知,这是一个微不足道的FD,因为你从a中学不到什么新东西。但是当你有 E-> A B-> C B-> D 这到底是什么意思?它是简单的“Nothing暗示A”,因此A可以在定义的域中具有它想要的任何值,还是它必须是空值?空集通常写为∅ 或{} A->{}是微不足道的。(因为{}是A的子集) {}->A不是平凡的。(除非A是{},因为{}

我试图用FDs来理解空集的概念。说我有

R(A,B,C,D)

A-> E
B-> C
B-> D
其中E是空集,据我所知,这是一个微不足道的FD,因为你从a中学不到什么新东西。但是当你有

E-> A
B-> C
B-> D

这到底是什么意思?它是简单的“Nothing暗示A”,因此A可以在定义的域中具有它想要的任何值,还是它必须是空值?

空集通常写为∅ 或{}

  • A->{}是微不足道的。(因为{}是A的子集)
  • {}->A不是平凡的。(除非A是{},因为{}是每个集合的子集,所以也是{}的子集)
{}->A意味着A的值可以在不使用任何其他值的情况下确定,换句话说,R中的每个元组A的值必须相同。这与说A没有行列式或A为空不同。如果A没有行列式,那么A将是无约束的,在不同的元组中可能有不同的值


依赖于空集的一个示例可能是定义纯男性俱乐部成员身份的成员关系中的Sex属性:{}->Sex。

“你从拥有一个俱乐部中学不到什么新东西”没有帮助。了解函数依赖关系的定义:X->Y如果两行具有相同的X子元组,则它们具有相同的Y子元组。