首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >希望使用视图,但不能有外键

希望使用视图,但不能有外键
EN

Stack Overflow用户
提问于 2012-08-13 21:45:32
回答 1查看 29关注 0票数 0

假设我有以下实体: Customer、Account、Agreement、Sub-agreement、sub-agreement-account。

客户拥有零个或多个帐户,客户拥有零个或多个协议。每个协议都包含客户有权访问的特定类型的所有帐户。客户可以访问比他自己的帐户更多的帐户,所以我有一个视图,可以检索客户有权访问的所有帐户(具有帐户类型)。

因为一个协议有一个特定类型的帐户,所以我想要一个新的视图来帮助我方便地查询,它将为我提供某个协议的所有帐户(基本上使用第一个视图,但将其与协议的帐户类型结合在一起)。

然后,客户可以使用该协议作为基础创建子协议。因此,客户可以选择与基本协议(子协议-帐户)上的某个帐户子集创建子协议。在这里,我想要一个基本协议帐户的外键,以防止帐户被插入到不在基本协议中的子协议中。但由于这只是一个视图,这是不可能的!

我是否应该跳过外键并使用应用程序逻辑(也可能是帐户和子协议帐户之间的外键),以确保不可能在不在基本协议上的子协议上插入帐户?或者我应该引入一个表“协议-帐户”,实现帮助我获得协议帐户并让我的应用程序维护该表的视图?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-08-13 22:05:55

我永远不会创建任何额外的表来强制(偶尔)关系约束。

一定要在帐户和协议之间创建自然的关系/约束,但不要为了偶尔使用而引入任何额外的数据复杂性。

在创建子协议时向用户显示基本协议有效的帐户子集,并在保存时复选选定列表。

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

https://stackoverflow.com/questions/11935570

复制
相关文章

相似问题

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