我正在寻找关于如何建模包含一个特殊节点的有向图的意见。
特殊节点:
目前的设计:
表格:节点,边缘。边缘包含两列: from_node_id和to_node_id,每个列都引用节点表中的记录。
与其将特殊节点存储为节点表中的第一条记录,我决定根本不为其保存记录,将其与任何数据库查询分开构造。在边缘表中,NULL在from_node_id列中具有特殊意义,它引用中心节点。
我使用此设计的动机是,我不必担心保护中心节点记录不被删除/修改,或者在边缘表的to_node_id列中被引用。这也将自动防止边缘从和到达同一节点。我意识到这种设计有一些缺点,比如不能使from_node_id和to_node_id成为复合主键,而且可能还有更多。
目前,我倾向于使中心节点成为一个实际的记录,并在相关的数据库方法中为该节点创建检查。这个设计最好的方法是什么?
发布于 2009-07-24 23:07:42
在本例中,我看到了一些反对使用NULL的参数。
如果节点包含实际数据,则如果中心节点可以更改,则必须对application.
换句话说,我更希望在中央节点的数据库中有行。
https://stackoverflow.com/questions/1180078
复制相似问题