比如说现在要管理一幢楼的数据,有节点表,房间表,楼层表,建筑表。每个房间有检测节点,比如101房间的节点1属于101房间的同时又属于一楼,然后每个楼层又有不属于单独房间而是属于整个楼层的节点比如节点2属于一楼。
如果每个节点都能归类到房间的话,我可以在节点表增加个房间项作为外键,但是实际情况不是这样,那么这个节点表该怎么设计呢?
微信里点“发现”,扫一下
二维码便可将本文分享至朋友圈。
如果是一个表的话,就要用多列做为主键,作为主键的几列互相对应。也可以设置成多表,多对多的关系。
建立节点--房间,节点--楼层,实现上面的结构。你看这样行不行?
你可以每层楼都假设有一个虚拟房间,这样每个节点都能归类到房间了,假如这个节点不属于单独房间的话你就让它的外键为虚拟房间。
多谢指点,我也想过这样实现,但是因为节点可能由几个房间或楼层共享所以还是得建立节点--房间,节点--楼层多对多关系的表,这样在节点中设置外键关联就没必要了。