【发布时间】:2015-12-15 11:44:37
【问题描述】:
我有以下型号。
Book has Articles (Article has foreign key to Book)
Article has Images (Article has upto #max number of foreign keys to images, Article have #max number of foreign key to images. which maybe null)
Furthermore I have Book - Image relation
because certain images are included in the book but not owned by article
我制作的模型可以快速回答诸如
之类的查询- 给我一篇文章的图片。
- 给我一本书的图片(按时间排序,必要时分页)
人们说我的造型不好。 (when foreign key points to something else, move other data as well)
想知道更好的替代架构。
【问题讨论】:
-
这是“模式”。此外,您应该拥有最大数量的任何东西。您还需要一个文章-图像关系表。
-
@JonathonReinhart:我稍微编辑了 OP。文章有 #max 个外键字段(其中一些可能为空)到 Image。有文章图像表更好吗?为什么?
-
MySQL 和 Postgresql 的模式定义相同?一个棘手的...
-
@jarlh:不应该包含 mysql 或 postgresql 作为标签? :(
-
因为这是一个数据建模问题,所以数据库引擎并不重要。如果这是我的数据库,我会在文章中添加一条默认记录,其名称类似于“不是文章”。然后,您可以将没有真实文章的图像分配给该记录,并摆脱您的书籍图像关系。此外,如果一篇文章可能出现在不止一本书中,那么您就有问题了。
标签: mysql sql database postgresql schema