我需要帮助来选择正确的数据库设计。我们有多个数据库模式:
- 图片架构
- 富模式
- 条形图
- ...
picture schema包含有关上传图片的表,其中根表picture的 id 为 uuid 类型。
foo并且barschemas 包含主表foo,并且bar它们的 id 类型也为 uuid。这些表的每条记录都与图片具有基数M:N。
由于架构不同,不能有外键。那么连接表的正确设计是什么?每个模式 (foo和bar) 是否应该包含带有 picture_id 的连接表,如下所示:
在 foo 模式中:
| foo_id (uuid) | picture_id (uuid) |
在酒吧模式中:
| bar_id (uuid) | picture_id (uuid) |
或者我应该只在图片模式中创建一个连接表,这要归功于这样的 uuid 类型:
|picture_id (uuid) | entity_id (uuid) |
entity_id 将是 foo 或 bar 的 id - 没关系,因为 uuid 始终是唯一的,对吧?你怎么看?您可以考虑每个模式用于不同的微服务。谢谢你的建议。