关于如何表达一对多关系的说明
Explanation on how to express one to many relationships
假设我有一个用户可以拥有多件艺术品(一对多)。
中间是否有 table 保存此信息?或者艺术实体有一个可以称为“所有者”的属性,它是用户中主键的外键?
如果一件艺术品只能由一个人拥有,那么就不需要任何其他表了。
SQL> create table owner
2 (id_owner number constraint pk_own primary key,
3 name varchar2(20) not null
4 );
Table created.
SQL> create table piece_of_art
2 (id_art number constraint pk_art primary key,
3 name varchar2(20) not null,
4 id_owner number constraint fk_art_own
5 references owner (id_owner)
6 not null
7 );
Table created.
SQL>
假设我有一个用户可以拥有多件艺术品(一对多)。
中间是否有 table 保存此信息?或者艺术实体有一个可以称为“所有者”的属性,它是用户中主键的外键?
如果一件艺术品只能由一个人拥有,那么就不需要任何其他表了。
SQL> create table owner
2 (id_owner number constraint pk_own primary key,
3 name varchar2(20) not null
4 );
Table created.
SQL> create table piece_of_art
2 (id_art number constraint pk_art primary key,
3 name varchar2(20) not null,
4 id_owner number constraint fk_art_own
5 references owner (id_owner)
6 not null
7 );
Table created.
SQL>