关系数据库 - 多种类型

时间:2014-03-02 22:24:58

标签: mysql database types relational

我正在建立一个关系数据库,其中包含以下信息。

会有一个名称列,每个名称都有一个唯一的名称和ID。例如:a,b,c。

每个a,b和c都需要创建多个项目。例如,x,y和z。

如果(姓名) - [必填]> (项目),然后

a -> x, y
b -> x, y, z
c -> y, z

我如何将其存储在数据库中?我阅读使用逗号分隔列表是一个坏主意,并且无法想到解决方案。

谢谢!

1 个答案:

答案 0 :(得分:0)

您需要的是一个关联表或联结表。它可能被定义为:

create table NameItems (
    NameItemsId int not null auto_increment,
    NameId int,
    ItemId int,
    foreign key(NameId) references Names(NameId),
    foreign key(ItemId) references Items(ItemId)
);

这假设您有两个其他表NamesItems,其中包含有关这些实体的信息。