小编Wug*_*Wug的帖子

为什么这个关系是3NF?

我有一个关系:

\n\n
R4 = {{T,U,V}, {T \xe2\x86\x92 U, U \xe2\x86\x92 T, T \xe2\x86\x92 V}}\n
Run Code Online (Sandbox Code Playgroud)\n\n

从答案中我知道这个关系在BCNF中。

\n\n

我正在经历严格确定这种关系所遵循的正常形式的过程。我很清楚为什么这种关系是在 1NF 和 2NF 中,如果我假设它是在 3NF 中,BCNF 就很容易遵循。

\n\n

然而,3NF 的定义指出:

\n\n
\n

每个非素数属性都非传递地依赖于表中的每个候选键。

\n
\n\n

但是,据我所知, 和{T}都是{U}表的候选键,{V}因此传递依赖于{U}

\n\n

维基百科上有 3NF 的替代定义:

\n\n
\n

Carlo Zaniolo 在 1982 年给出了与 Codd 等效的 3NF 定义,但表达方式不同。该定义指出,表在 3NF 中当且仅当对于其每个函数依赖项 X \xe2\x86\ x92 A,至少满足以下条件之一:

\n\n
    \n
  • X 包含 A(即 X \xe2\x86\x92 A 是平凡的函数依赖)
  • \n
  • X 是一个超级键
  • \n
  • AX 的每个元素(A 和 …

normalization dependencies

3
推荐指数
1
解决办法
2108
查看次数

标签 统计

dependencies ×1

normalization ×1