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

建立这样一个表用户表怎么建立是最好的?
userinfo

id   user_id   user_pass  
0       xx             xx

我把id作为主键,问一下   这个id是不是对于的?

就直接是这样,把user_id作为主键
user_id   user_pass  
    xx             xx

这2种方式那种好啊??

另外,用户好友表,

user_id   buddy_id
1                       2
2                       1

这是另外个表   这样建立的话,好像数据就冗余了
因为1是2的好友,同样2也是1的好友。
如果只保留一个(1和2   2和1是相同的之要一个)的话,
那么每次查询时就需要判断这2个字段。
不知道那种方法好啊
各位大哥   大姐给点建议啊、

------解决方案--------------------
1.user_id user_pass
2.user_id buddy_id
buddy_id是各user_id用分隔符连起来的字符串
------解决方案--------------------
首先,如果每一个是好友的都建一条记录,这样冗余度太大了
其次,如果按1,2都有关联只作一条记录,这样虽然降低了一定的冗余,但在分析好友的情况复杂
相比以上两种情况,用分隔符比较合适,它可以单向判断谁是谁的好友,至于解析字符串那有很多方法
如果判断0有多少好友,你可以找找split函数,如果判断6是不是0的好友,可以charindex