2013-01-05 61 views
0

我剛開始使用外鍵來強制執行某些列的內容,並且希望確保將Key放在正確的表上。MySQL外鍵+哪個表放鑰匙

在具有一對多關係的2個表格的情況下。

例如:customers(one)and orders(many)。

我希望確保在訂單欄中使用有效的客戶編號。

我正確地說外鍵放在訂單表上。

例如爲:單(columnX)引用的客戶(columnX)

+1

是的,外鍵是訂單表中的客戶編號。 – DWright

回答

1

請記住,一個外鍵是引用約束,說表中的列(或多個)值的範圍是由另一臺作用域。具體而言,你的榜樣,你會在你的ordercustomer_id列,這將是一個外鍵customer表,這意味着在所有的情況下,你需要一個有效的客戶ID,以便插入一條記錄在訂單表中。

1

是,在一個表(客戶)的主鍵(通常是客戶)應在一到一對多的關係鏈接上的許多表(訂單)的外鍵。每個訂單隻能屬於一個客戶,但客戶可以下很多訂單。