2017-08-13 28 views
-2

我有兩個表所示:我應該在哪張桌子上做FK關係?

-- users 
+----+--------+---------------------+----------+--------------------+ 
| id | name |  email   | password |  cookie  | 
+----+--------+---------------------+----------+--------------------+ 

-- user_detail 
+---------+-----+-------------------+----------------+ 
| user_id | age |  about  | birthday | 
+---------+-----+-------------------+----------------+ 

我需要users(id)user_detail(user_id)列之間的關係。現在我想知道,我是否應該打開user_detail表,並在user_id列中創建關係(指users(id),反之亦然?

+0

Downvoter請發表評論,並解釋這有什麼錯我的問題? –

+0

什麼是FK的*定義? FK約束是什麼意思?當你搜索到你的標題時,你發現/瞭解到......? PS Downvote arrrow mouseover text:「這個問題沒有顯示任何研究工作; ...」。 PPS關係是一張表,你的意思是關係。 – philipxy

+1

[MySQL中的外鍵基礎知識?](https://stackoverflow.com/questions/757181/basics-of-foreign-keys-in-mysql) – philipxy

回答

1

您正在尋找的語法是這樣的:

alter table user_details add constraint fk_user_details_user_id 
    foreign key (user_id) references users(id); 
+0

好的thx。爲什麼不'改變表用戶添加約束fk_user_id外鍵(id)引用user_detail(user_id);'? –

+0

@MartinAJ。 。 。因爲外鍵是'user_details'中的'user_id',所以這就是定義所在的位置。 'user.id'是該表的*主鍵*。 –

+0

@GordonLinoff你爲什麼回答這樣一個明顯重複的問題,應該被降低評分? – philipxy

相關問題