我正在建立一个关系数据库,其中包含以下信息。
会有一个名称列,每个名称都有一个唯一的名称和ID。例如:a,b,c。
每个a,b和c都需要创建多个项目。例如,x,y和z。
如果(姓名) - [必填]> (项目),然后
a -> x, y
b -> x, y, z
c -> y, z
我如何将其存储在数据库中?我阅读使用逗号分隔列表是一个坏主意,并且无法想到解决方案。
谢谢!
答案 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)
);
这假设您有两个其他表Names
和Items
,其中包含有关这些实体的信息。