我为一个应用程序创建了一个数据库,其中有多个网络,其中有多个节点和元素以及多个场景,所有这些都与网络相关。[见下图]
我的问题是:由于sce_results
andsce_paramaters
将具有网络的结果和参数信息nodes
,elements
我是否还应该通过外键在nodes
&elements
表和sce_results
&表之间建立这种关系?sce_paramaters
或者因为它变得复杂,我创建表格的方式很好?也许更普遍的问题是,什么时候通过外键建立这些关系比较好?
到目前为止,我虽然因为nodes
&有了它们的名字,但在我下载了所有必要的数据以进行进一步计算或创建结果图等之后,我可以将elements
它们与&表name
中的列进行匹配......因此我并不真正需要这种关系我的观点。你怎么认为?sce_results
sce_paramaters
例子:
Network1: Nodes: [Node1, Node2, Node3]
Elements: [Element1, Element2]
Scenarios: [ScenarioX]
ScenarioX: Paramater: [Pressure_Node1 = 5, Pressure_Node2 = 10, ...]
Result: [Flow_Node1 = 100, ...]
# In this case nodes table looks like:
id | net_id | name | ... | x | y
1 1 Node1
2 1 Node2
...
# In this case sce_parameter table looks like:
id | sce_id | name | extension | value | unit
1 1 Node1 Pressure 5
2 1 Node2 Pressure 10
...