读书人

[讨论]好友功能-数据库设计方案,该如何

发布时间: 2012-01-16 23:36:51 作者: rapoo

[讨论]好友功能--数据库设计方案
大家各抒己意,讨论出个高效的数据库设计方案好吗?---实现好友功能

小弟不才,先抛砖引玉:

1,一个friend表,列:firendId(FK), UserAId, UserBId
2,一个friendApply表, 列Id(FK), UserAId,UserBId

如果一个UserId = 10 的用户上线,

点击 "查看我的好友 ":
select UserBId form friend
where UserId = UserAId

点击 "等待通过的好友 ":
select UserBId form friendApply
where UserId = UserAId

点击 "删除该好友 "
delete friend
where UserId = UserAId

.......

不过这样做应该是效率很低的吧,每一次操作都要在friend表里检索....

[解决办法]
每一次操作都要在friend表里检索效率为什么会低呀,不是蛮好的吗。

不过个人觉得不需要friend表和friendApply表分开,可以只用一个表,加一个Status栏位区分,这样如果申请成功,只要Update一下Status栏位就可以了,不用在friendApply表Delete,再在friend表Insert。

读书人网 >SQL Server

热点推荐