对于必须在MySQL数据库中表示的数据,我目前遇到了这个问题:
我必须支持不同种类的产品,每个产品都有不同的数据,例如,汽车,酒店房间,书籍等。对于我的应用程序,有一些数据是每个产品的通用数据,如名称,描述,价格等。
因此,我认为应该有一个产品表,其中包含公共数据,其中包含汽车、hotel_rooms、书籍以及以1:1关系引用此产品表的任何表。
问题是将product表作为主表,这样我就可以查询product表,并通过这些查询“自动”获得额外的数据,这样我就可以使应用程序更“通用”。
你有什么想法可以做到这一点吗?我有一些想法,但我不认为它们是最好的方法,当这个问题可能比我想象的更普遍时,我不想去做肮脏的黑客。
使用: PHP + Zend Framework + MySQL。
发布于 2008-11-05 16:10:28
有一个基对象,然后使用多态性来子类化这个基对象。基本对象存储所有共享数据(在一个表中)。然后每个子类都有其独特的属性,并将它们从一个单独的表键中获取到基表中。使子类能够从其父对象加载公共数据,也能够加载其唯一/不同的数据。
https://stackoverflow.com/questions/264119
复制相似问题