CREATE TABLE "lemmings"
(
"id" bigserial,
"name" varchar(255) NOT NULL,
PRIMARY KEY ("id")
);
CREATE TABLE "speeches"
(
"id" bigserial,
"title" varchar(255) NOT NULL,
"year" integer NOT NULL,
PRIMARY KEY ("id")
);
此架构中不存在其他表。
lemmings
表没有唯一索引/约束。这意味着两只旅鼠可以有相同的 name
。
一只旅鼠可以发表多次演讲,一次演讲也可以由多只旅鼠发表。
澄清一下:一只旅鼠可以发表多次演讲,而一场演讲也可以由多个旅鼠发表。
鉴于上述情况,我认为
lemmings
表是多余的,应采取以下步骤:
lemmings
桌子。lemming_names
表添加 speeches
列。我的推理正确吗?
由于您不能(不应该)在单个列中拥有多个值(旅鼠名称),因此您可以使用交集表对此进行建模?事实上,您只有旅鼠的名称属性,这一事实不会影响您建模 M:M 关系的方式