日期:2014-05-19  浏览次数:20449 次

求一个表中有两个字段引用同一个外键方法
有一个UserInfo表和还有一个Friend表

UserInfo表的结构如下:
          UserID   主键   自动增长类型
          UserName   varchar(16)

Friend表的结构如下:
      FriendID   主键自动增长类型
      UserID   外键   引用UserInfo的UserID
      UserID2   外键   同样引用UserInfo的UserID   只是这个字段不能和上面的字段相同

UserInfo有如下记录                
    UserID         UserName                  
    1                   aaa  
    2                   bbb
    3                   ccc

Friend   表有如下记录
    FriendID               UserID             UserID2
      1                                 1                         2
      2                                 2                         1
      3                                 1                         3

通过以上Friend表中的3条记录可以做出如下判断
第一条   用户bbb是用户aaa的好友
第二条   用户aaa是用户bbb的好友
第三条   用户ccc是用户aaa的好友

这样的关系应该怎么建立?

------解决方案--------------------
UserID和UserID2建立唯一约束
------解决方案--------------------
Check(UserID <> UserID2)不行?