2016-08-02 74 views
0

這使我很長一段時間不使用SQL,並且我迷失了ForeignKeys/table創建。Mysql外鍵/表

我有兩個表:

users 
id | pseudo | firstname | email | password ... etc 

event 
id | organizer | language | event_name | event_desc | event_place | ... 

我需要的用戶可以訂閱一個或多個事件。 (當然,一個事件可以包含一個或多個用戶)。

首先,我開始通過創建事件表中的列「registered_users」,但我認爲這不是解決......

所以我不知道了:

  • 無論是我改變一個表有一個外鍵?
  • 或者我可能需要一個外鍵將每個用戶關聯到一個事件列表,然後另一個FK將每個事件關聯到一個用戶列表......?

回答

0

你有一個多對多的關係,需要第三個表,EventUsers帶有Event.Id和User.Id的列。

0

這裏它取決於您的需要,但似乎您必須更改事件表並添加user_id的外鍵,該外鍵可以在事件表中爲多個。

0

創建一個單獨的表以保留關聯的用戶和事件。

User_Event

User_ID | Event_ID

此表格將包含所有必需的數據,即多個用戶有一個事件或多個事件與一個用戶