2012-12-13 50 views
0

我想为我的网站创建一个好友列表,这个好友列表应该存储在数据库表中,以下是我认为最应该达到目的的表结构。创建好友图

CREATE TABLE `sdt_friend_graph` (
    `user` INT(11) NOT NULL, 
    `friend` INT(11) NOT NULL, 
    `status` ENUM('requested','accepted') COLLATE utf8_unicode_ci DEFAULT NULL, 
    `requested_on` DATETIME DEFAULT NULL, 
    `accepted_on` DATETIME DEFAULT NULL, 
    PRIMARY KEY (`user`,`friend`) 
) 

只是想看看我的做法是确定的,或者是有没有更好的办法做到这一点,以使其更有效率,我开放的建议。

问候,

回答

0

你的表结构看起来不错,我想补充的用户作为一个AUTO_INCREMENT领域,将名称更改为friendid ...只是语义。

+0

我该如何让'user' AUTO_INCREMENT它应该包含正在生成好友请求的'user_id'并且可以是随机的我想,如果我错了或误解了你,请纠正我。谢谢回复。 – Anupam

+0

你是对的,如果你想存储现有的用户不需要自动增量,我很困惑,的确是你有正确的。 我错过的一件事是ENUM字段也许添加拒绝列表将有所帮助。 干杯。 –

+0

是的,我刚刚加入拒绝,谢谢你的建议。 – Anupam