0

我想问你我该如何解决这个问题。我想将此功能添加到我的网站。但我不知道究竟什么是最好的解决方案。我在想mysql表:像这样

ID | id_user_who | user_seen
 1       2             10

id 为 2 的用户看到了 id 为 10 的用户。但这是一个好的解决方案吗?

4

4 回答 4

1

这是一个很好的解决方案,而且我相信这是唯一正确的方法。只需删除ID列(第一列),这肯定是一个无用的代理键。相反,将该对设置(id_user_who, user_seen)为主键。

请注意,主键和索引,您不需要任何额外的索引。

正如大卫建议的那样,更仔细地命名你的列,当你试图弄清楚这些列到底意味着什么时,你会感谢自己在几个月后这样做。

我宁愿建议像visitor_idand之类的东西visited_id

于 2013-03-17T16:26:54.737 回答
0

不确定这是否真的是一个问题......但无论如何,如果我做类似的事情,我会添加一个时间戳,或者一些点击(和最后一次访问)......

于 2013-03-17T15:03:28.413 回答
0

是的,这是一个很好的解决方案。确保您的列已编入索引,以便查找/计数快速。您可能还需要考虑添加“date_viewed”列,以便在需要时使记录过期。

于 2013-03-17T15:03:28.943 回答
0

这似乎是一个不错的解决方案。使用起来很有意义。我同意@JD 确保它已编入索引,并可能添加一个 date_viewed 列。这样,您在对数据进行排序时就有更多选择。

于 2013-03-17T15:03:54.070 回答