我的架构中是否需要第三个表

时间:2012-07-13 18:51:48

标签: mysql sql schema

场景:每个“订单”只能有一个“导入文件”。所以我创建了一个表,其主列为* order_code *和* file_code *(Order_File Table) 此外,每个“订单”可以包含多个“基因”。所以我创建了另一个表格,其主要列为 order_code gene_code 。 (Order_Gene表)

所以现在在前端,用户从组合框中选择“订单”,我们显示该订单的导入文件和该订单的基因列表。

我想了解您对此架构设计的看法,如果我设计错误或者它是正确的?谢谢。

2 个答案:

答案 0 :(得分:2)

如果我正确地理解你,那听起来是正确的。导入文件是订单的属性,Genes表位于一对多关系的许多方面,允许许多基因与一个订单相关联,但每个基因只能与一个订单相关联。

如果您想将许多基因与多个订单相关联(即多个订单的基因表中的'重复'记录),您需要创建一个带有order_code和gene_code列的'链接表',并创建一个记录那两个表之间的每个链接或关联。

答案 1 :(得分:1)

如果每个订单代码都是唯一的,那么您所谈论的设计就会有效。