首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在EF代码中设计通用附件SQL表/实体

在EF代码中设计通用附件SQL表/实体
EN

Stack Overflow用户
提问于 2011-12-01 14:05:32
回答 2查看 413关注 0票数 0

在我的系统中,许多实体需要有附件。

例如,特派团实体需要自己的附件,也需要活动、项目等。

问题是如何设计附件表?

每个实体的

  1. 附件表,如MissionsAttachments、ActivitiesAttachments等?
  2. 系统中所有附件的一个表?如果是,那么每个附件的标识符是什么?

对于如何创建将为整个系统服务的通用附件表,我有什么想法吗?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2011-12-01 14:14:46

我只会有一个表的附件和一个表的实体帐户。例如:

代码语言:javascript
复制
Entities Table:
==============
EntityId
EntityName

Attachments Table:
=================
AttachmentId
EntityId
Attachment
票数 0
EN

Stack Overflow用户

发布于 2011-12-01 14:17:34

如果您想要一个通用附件表,可以执行以下操作:

代码语言:javascript
复制
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的任务表上设置外键约束的能力。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/8342606

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档