在我的系统中,许多实体需要有附件。
例如,特派团实体需要自己的附件,也需要活动、项目等。
问题是如何设计附件表?
每个实体的
对于如何创建将为整个系统服务的通用附件表,我有什么想法吗?
发布于 2011-12-01 14:14:46
我只会有一个表的附件和一个表的实体帐户。例如:
Entities Table:
==============
EntityId
EntityName
Attachments Table:
=================
AttachmentId
EntityId
Attachment发布于 2011-12-01 14:17:34
如果您想要一个通用附件表,可以执行以下操作:
create table attachments
(attachment_id int not null,
parent_id int not null,
parent_type varchar(32) not null,
other_cols_here,
primary key(attachment_id))这将允许您拥有独立的实体表(因此,您不必总是在某些通用表中有一行用于任务、活动等)。要找到一个任务的附件,你必须做:select * from attachments where parent_id = MISSION_ID and parent_type = 'mission'
当然,这样做的缺点是,您放弃了在parent_id的任务表上设置外键约束的能力。
https://stackoverflow.com/questions/8342606
复制相似问题