我在phpmyadmin中创建了两个简单的表。 “内容创建者”列表和“内容创建者类型”列表。每个“内容创建者”可以具有与其相关联的多个“内容创建者类型”,因此这是一对多的关系。在phpmyadmin中,我创建了以下关系。
ALTER TABLE `contentcreator`
ADD FOREIGN KEY ( `ContCreat_TypeID` )
REFERENCES `MyDatabase`.`contentcreator_types` (`ContCreat_TypeID`)
ON DELETE RESTRICT ON UPDATE RESTRICT ;
现在,当我尝试将数据(使用phpmyadmin中的插入数据接口)插入到“内容创建者”表中时 - 我得到一个下拉列表,允许我选择“内容创建者类型ID”之一。但是,我希望能够为每个内容创建者添加多个“内容创建者类型ID”。如何使用插入数据接口在phpmyadmin中执行此操作?
答案 0 :(得分:1)
听起来你在这里有多对多的关系,而不是一对一的关系。您需要为类型表和内容创建者表添加带有外键的交集表。
如果你想以一对多的关系来做这个,那么很多的一方获得外键,而不是一方。这意味着您将拥有内容创建者类型表上的内容Creators表的外键。然后,每个内容创建者将在类型表中为其拥有的每种类型获得一个新条目,但是在该方案中您将有重复。
许多人:
ContentCreatorID CreatorName
---------------- ------------------
1 Creator1
2 Creator2
3 Creator3
CreatorTypes (intersection Table)
ContentCreatorID TypeID
---------------- ------------------
1 1
1 2
2 3
3 2
Types
TypeID TypeName
---------------- ------------------
1 Type1
2 Type2
3 Type3
答案 1 :(得分:0)
您可能需要考虑创建一个映射表,以将创建者与其类型
相关联 creator table
id | creator
type table
id | type
mapping table
creator_id | type_id