我有一个表,用于存储“ friend ”关联。因此,第 1 列是用户 ID,第 2 列是 friend ID(其中 friend ID 只是用户表中的另一个用户 ID。
我一直计划为每个关系添加两个条目。为了解释一下,假设用户 100 想与 200 成为 friend 。我的表格如下所示:
USERID = 100
FRIENDID = 200
STATUS = 'friend'
但同时
USERID = 200
FRIENDID = 100
STATUS = 'friend'
他们接受好友请求后。这个想法是,关系是双向定义的,因此我可以根据他们是否“请求友谊”或者用户是否想要对 friend 进行分类或添加自定义注释来设置不同的状态。
我想使用 userID 和 FriendID 列作为组合键,但是如果我在两个地方使用相同的 userID 和 FriendID 组合(即使它们颠倒了),MYSQL 会不会崩溃?
最佳答案
您应该将 FriendID 和 UserID 作为组合键。这意味着同一个友谊不能有两种不同的状态。 MySQL为什么会崩溃?
关于MYSQL 复合键 "FriendList",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21198614/