Oracle 用其他表的主键作为一张新表的主键,并用此作为2表之间的关联,会带来什么不好的后果么?

 我来答
singlou
2014-06-17 · TA获得超过480个赞
知道小有建树答主
回答量:241
采纳率:0%
帮助的人:175万
展开全部
首先,你想一下主键是什么,那是表示一个实体的唯一标识,有别于其他记录的字段内容。
其次,如果其他表的主键也是这个表的主键,那是否意味着这两个表的粒度就是一致的。如果按照这种设计,那么相当于一个实体有两个对象同时维护。例如汽车这个表,其中一个表描述特性等字段,另外一个表描述厂家信息等字段。不良的后果便是,(1)如果两张表数据量一致,一旦发生范围的变化,两张表都需要维护。(2)如果两张表数据量不一致,那么便失去了可靠性,不知道那张表才是一个全集。
但有种例外,那就是一张表是全集,另外一张是范围子集。通常这种情况是由于性能问题导致的,例如原来一张表就有1千万,查不动,需要的范围只有1万,因此另外设计一张小表专门存放那1万,查询起来就不费力了。
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式