我有这个数据库架构,如下图所示:
在我需要改变一些事情之前一切都很好。 因此,一些国家现在有分歧。并且每个部门可能没有相同的流程。
对于前者,德国有3个师(Div1,Div2,Div3)。我有一些适用于所有德国的流程,有些仅适用于Div1。
我打算用ff架构创建一个新的数据库country_division:
division_country
----------------
division_id
countrycode
division_name
但是当我需要添加一个条目来向一个有分歧的国家添加一个进程时,我会想与我的process_country表发生冲突。
如何以适用于所有国家/地区的方式重新设计数据库?
编辑:根据您的评论,这就是我创建的内容。如果这样可以,请告诉我。
答案 0 :(得分:1)
在我不知道您的所有要求的情况下,我有两个选择。您可以让所有国家/地区至少包含一个部门(对于那些实际上没有部门的国家/地区的默认部门),然后在所有情况下将您的流程链接到部门。这是我通常倾向于采用的方法。
另一个选项是让您的关联表包含division_id
,但要使其NULL
能够并且将分区和国家/地区的FK分开。然后,对于没有分区的国家/地区,链接表中的下方流程在该表格中只有NULL
的{{1}}值。
答案 1 :(得分:0)