作者:用户691sf34d0b | 来源:互联网 | 2024-10-20 14:22
我正在尝试在MariaDB中创建将两个表与一个桥表链接在一起的方法。该表本身称为“ actsIn”,位于“ actors”和“ Movies”表之间。
在我的ER图中,“ actsIn”表包含3个属性-
- “ actsIn”表的主键,它是由下面的两个外键组成的复合主键。
- actorName(引用“ actors”表中主键的外键)
- 标题(引用“电影”表中主键的外键)
当我在MariaDB中创建此表时,是否将复合主键作为其本身名为actorName / Title的属性来对待?
//Create table actsIn
//
CREATE TABLE IF NOT EXISTS actsIn (
actorName/Title VARCHAR(255) NOT NULL,actorName VARCHAR(255) NOT NULL,Title VARCHAR(255) NOT NULL,PRIMARY KEY (actorName/Title)
);
还是在2个属性字段actorName和Title中创建一个,然后创建引用这两个属性的主键?
CREATE TABLE IF NOT EXISTS actsIn (
actorName VARCHAR(255) NOT NULL,Title VARCHAR(255),PRIMARY KEY (actorName,Title)
);
通常,您会有一个演员表(actor_id *,名称),电影表(movie_id *,标题)和一个相互关联的表(actor_id *,movie_id *)-* = (component of) PRIMARY KEY
如果演员可以在同一部电影中显示为几个角色,那么您可能需要对该模型进行稍微修改。