2013-07-13 208 views
1

我在這裏一個新手主鍵VS外鍵

我創建了一個表的主鍵的customer_id,並與外鍵CUSTOMER_ID另一個表將它加入到第一臺

我的問題

當我想在兩個表中輸入數據時,我應該插入兩次customer_id(一個在第一個表中,另一個在第二個表中)。

我應該在每次插入數據時都這麼做嗎? 謝謝:)

回答

2

您的CustomerId表代表Customer表中的每個客戶。所以每當新客戶到達時,您都會爲該客戶創建一個ID。

對於與客戶「相關」的其他表,您爲每個條目插入一個customer_id。

E.g.

Customer 
CustomerId, CustomerName 

每個客戶都有一個唯一的ID ..

ProductSold 
ProductId, ProductName, CustomerId 

現在,您可以知道哪些客戶購買了,因爲在產品表的外鍵的產物。 因此,對於每個產品,都插入購買該產品的客戶ID。我希望這是有道理的。

- 新客戶需要新的ID(當您插入新客戶時) - 客戶購買的產品需要外國客戶來識別其買方。

所以2 CustomerId插入。

所以,是的..你是對的笑:P

+0

是,該表是由鍵關聯的 - 所以它必須被插入到Customer.ID,並寫成Order.FK_Customer。 (ProductSold很可能實際上是一個Order或OrderLine,在一個真實的系統中。) –

+0

@ThomasW同意,謝謝你的意見。 –