我计划按网址存储包含相关数据的站点地图
想知道哪个更好:
为每个用户/网站创建新表
对于每个网站,将所有网址(包含其数据或单独的列)保存为1行数组
将每个网址保存为单独的行,主网站为标识符
说明:
每个用户都有自己的表,所有网址都在自己的行中
表格将包含以下列:id,user,website,urls
对于同一网站的所有网址,它会将它们保存为该特定网站和用户旁边的数组
答案 0 :(得分:2)
好的设计看起来像这样:
表1(用户 - >网站一对多关系):
User (PK) | Website (FK)
表2(网站 - >网址一对多关系):
Website (PK) | URL
PK =主键
FK =外键
我认为这类似于你的选项3,除了或分成两个表,不能冗余地存储每个网站所属的用户。
您还可能希望创建一个网站表,该表只存储将网站关联到ID:
Website Id (PK) | URL
您在此表中存储网站的主要网址,例如“stackoverflow.com,然后将相对网址存储在(网站 - >网址)关系表中,例如”questions / 8116983 / which-is-better-using -multiple-行桌-或阵列式-MySQL的。
然后您将使用表1和表2中的网站ID,而不是网站。
答案 1 :(得分:0)
您不希望为每个用户创建新表。把它全部放在一张桌子里。