开发者

数据库中,一对多的时候外键设置在多的那张表吗?如果一对一的时候,外键应该设置在哪里?多对多的时候?

...2022 12小时前

首先你得题目和你的补充内容不一致,呵呵!你题目的内容别人已经回答过了。补充内容中的问题,是可以实现的,现在大多数数据库都支持列的类型为复合数据类型,这样可以在一列中存储一张表或者一个数组。比如:oracle支持对象类型、嵌套表、数组等复合数据类型。你问题中的表在oracle中可以这样设计:1:定义一个学生的对象类型2:教室表中的students字段的类型定义为学生对象类型就可以了

题主如果问的是一对多关系是否可以用外键表示,答案是肯定的,因为一般实体之间的关系有一对一,一对多,多对多,一对多的关系外键一般在多的一方便可维护它们之间的关系。题主如果问的是一个外键是否可以被多张表引用,答案也是肯定的,不冲突。

其它网友回答:

首先,外键引用的那个列在主表中必须是主键列或者唯一列。

所以1:n的肯定把外键建立在n的那张表上。

1:1,一般要看谁是主开发者_运维技巧表,谁是附属表,外键当然建立在附属表中。

n:m的情况,需要建立一个关系表,

两个原表和其关系分别是1:n,1:m


0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜