2012-04-13 28 views
-1

我在想數據庫的設計。 我有一個表的列是一個外鍵。我希望外鍵可以引用三個不同表格的列。 這可能嗎?我將如何爲此編寫創建表查詢? 示例 三個表:電影,書,電視..每個都有一列稱爲URL。 另一個表人們有列URL可以引用三個表中的任何一個的URL 這是可能的嗎?一個屬性是一個外鍵。外鍵可以參考三個不同的表

回答

0

您可以使用兩列用於此目的:一列包含另一個表中的行的ID,另一列包含項目的類型(例如電影,書籍,電視)。

要回答你的問題,是的,這是可能的,但只是數字不夠,因爲在不同的表中可能有多行具有相同的ID。

+0

這是可能的,但可能不適合我的設計 – 2012-04-13 21:38:09

1

如果你需要這樣的東西,它應該是你的設計有問題的標誌。

處理此類性質的最佳方法是製作URL表,並將所有URL引用指向該表。

+0

這似乎是合理的,三個表中的每一個都有url作爲主鍵。添加另一個將在創建或刪除時使用的新表。這是不好的設計,因爲它需要額外的空間,只用於刪除和創建 – 2012-04-13 20:17:10

+0

URL是主鍵?這對PK來說似乎是一個非常糟糕的選擇,因爲網址可以很容易地改變...... – JNK 2012-04-13 20:20:23

+0

oki我會認爲abt主鍵別的東西,但無論如何,你可以評論我以前對額外空間的評論? – 2012-04-13 21:39:19

相關問題