当前位置:  开发笔记 > 编程语言 > 正文

在RDBMS中建模朋友和追随者

如何解决《在RDBMS中建模朋友和追随者》经验,为你挑选了1个好方法。

我正在尝试确定在关系数据库中建立记录关系的最佳方法.这是经典的朋友/关注模式:

~~~~

用户可以拥有零到多个朋友.
用户可以拥有零到多个粉丝.

朋友和粉丝都是用户自己.

~~~~~

对此进行建模的最佳方法是什么?

谢谢!



1> Mehrdad Afsh..:

用户(UserId,...)
订阅(订阅者,发布者)
友谊(FirstUser,SecondUser)

CREATE TABLE Users (
    UserID int not null primary key,
    ...
)

CREATE TABLE Subscription (
    Subscriber int not null references Users(UserID),
    Publisher int not null references Users(UserID),
    constraint ck_NotEqual check (Subscriber <> Publisher)
)

CREATE TABLE Friendship (
    FirstUser int not null references Users(UserID), 
    SecondUser int not null references Users(UserID),
    constraint ck_Order check (FirstUser < SecondUser) -- since friendship is reflective
)

推荐阅读
有风吹过best
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有