MySQL结构为大量字段

时间:2013-05-10 02:53:15

标签: mysql

我有一个MySQL数据库,其中一个表存储用户信息,另一个表存储每个用户称为“标记”的内容。结构是这样的:

表1:user_info

id | col1 | col2 | ....

表2:标签

id | user_id | tag

大约用户数约为25000,实际上每个用户会有50个标签,但理论上用户可以创建无限标签。每个用户只能访问他/她创建的标签,因此我将其与表2中的user_id配对。

所以我的问题是我的结构是否结构良好,或者有更好的方法吗? (如果这不是一个正确的问题,请告诉我,因为这不是一个直接的代码问题。)

1 个答案:

答案 0 :(得分:3)

您还可以创建一个标签表和一个关系表,以将users表与标签表相关联。通过关系表,用户和标签之间会有很多关系。

标签表:id,name等 用户表:id,name等 关系表:user_id,tag_id,外键与tag.id和user.id相关联,外键与tag.id和user.id相关联。

据我所知,这可能是最好的方法,每个标签都有一行,每个用户有一行,用户和标签之间每个关系都有一行表。 / p>

根据您在应用程序端使用的内容,您通常可以在模型之间建立一些简洁的关系 - 活动记录中的许多通道场景或类似的东西,并使自己的事情变得非常简单。