2014-10-19 181 views

回答

0

刚刚看了这里的定义:):http://www.studytonight.com/dbms/database-normalization.php。 1nf要求每行都可以可靠识别。在你的表格中,你没有明确的主键。每行可以通过航班号和部分状态字段(到达或离开)以及预定时间来标识

我可以看到您的表违反了2nf,因为您的状态字段似乎包含多条信息,而不是的单一数据类型,即它告诉你2条信息:到达/离开和时间。在'已取消'的实际状态中还有一个隐含的值,它不会有相关的时间。

3nf消除不属于主键的字段之间的依赖关系,在您的情况下,我会将手指指向from和to字段:它们的值可能是查找表的一部分,因为每个航班号通常专用于一个特定的路线,如此重复他们在这张表是不必要的重复。例如,你似乎要去'悉尼',但是你真的要去'悉尼'(没有逗号),所以去西德尼的所有航班的查询都会找到QF431。 消除它们的另一个原因是,QF431出发和目的地机场可能会在行之间发生变化,这可能违反每个航班号对飞行路径唯一的规则。对于目前的结构,这个规则不能由dbms执行

+0

干杯的帮助,我会尝试实施你的建议 – DxSprods 2014-10-19 16:08:02