我正在尋找處理PHP和MySQL中多對多關係數據庫的最佳方法。在PHP中處理多對多關係的最佳方式MySQL
現在,我有2個表:
用戶(ID,USER_NAME,名字,姓氏)
連接(ID_1,ID_2)
在User
表id
是自動遞增添加和user_name
是獨特的,但可以改變。不幸的是,我無法控制user_name
及其改變的能力,但我必須對其進行解釋。
Connections
表顯然是user1和user2的id。
連接表需要考慮到這些可能的關係:
user1 --> user2 (user 1 friends with user 2 but not user2 friends with user1)
user2 --> user1 (user 2 friends with user 1 but not user1 friends with user2)
user1 <--> user2 (user 1 and user 2 mutually friends)
user1 <-!-> user2 (user 1 and user 2 not friends)
那部分是沒有問題的,我用的時候,如果他們分批改變是保持這些關係唯一遇到的問題。
可能的解決方案1:刪除用戶1的所有關係,並用更新後的列表讀取它們。我認爲這可能對我的需求來說太慢了。
解決方案2?其他人遇到這個問題?我該如何最好地處理這個問題?
更新:顯着的關係:
我處理這樣的關係:
user1, user2
user1, user3
user2, user1
在例如以下
是正確的:只有
USER1如下用戶2和用戶3
user2的如下USER1,但沒有按」 t follow follow3
user3不遵循用戶1或用戶2
不確定這是否與您的問題有關,但如果您的Connections表中唯一的內容是兩個用戶標識,那麼您如何區分不同類型的關係? – Ender 2010-04-27 18:51:00
@版,我更新了問題並回答了你的問題。 – Jayrox 2010-04-27 20:34:47
http://en.wikipedia.org/wiki/Associative_Entities – racerror 2010-04-27 21:55:33