【问题标题】:MySQL data modelingMySQL 数据建模
【发布时间】:2008-11-05 01:26:06
【问题描述】:

我目前遇到的问题是我必须在 MySQL 数据库中表示的数据:

我必须支持具有不同数据的不同类型的产品,例如汽车、酒店房间、书籍等。对于我的应用程序,每个产品都有一些通用数据,例如名称、描述、价格、等等。

所以我想有一个产品表,其中包含通用数据、汽车、酒店房间、书籍以及以 1:1 关系引用此产品表的任何表。

问题在于将产品表作为主表,因此我可以查询产品表并通过这些查询“自动”获取额外数据,因此我可以使应用程序更加“通用”。

关于如何实现这一点的任何想法?我有一些想法,但我不认为它们是最好的方法,而且当这个问题可能比我想象的更常见时,我不想去做肮脏的黑客攻击。

使用:PHP + Zend Framework + MySQL。

【问题讨论】:

标签: php mysql database data-modeling


【解决方案1】:

有一个基础对象,然后使用多态来子类化该基础对象。基础对象存储所有共享数据(在 1 个表中)。然后每个子类都有其独特的属性,并将它们从单独的表键中获取到基表中。使子类能够从其父对象加载公共数据,以及加载其唯一/不同的数据。

【讨论】:

    猜你喜欢
    • 2015-07-31
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-11-30
    • 2022-07-04
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多