Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我有下表:
我的直觉告诉我这很糟糕,因为TOTAL可以从TIME_INand推断出来TIME_OUT。
TOTAL
TIME_IN
TIME_OUT
这是什么正常形式的违反?
存储作为计算结果的值通常违反 3NF。它们构成了传递依赖。
在你的情况下,传递依赖是
time_in, time_out -> total
{time_in, time_out} 对不是候选键。
通常(咳咳),您会通过投影解决传递依赖关系,但是当传递依赖关系涉及计算结果时,这通常没有意义。有三个明显的选择。
这些中的每一个都可能对性能和维护产生不同的影响。