簡體   English   中英

多對多關系中的外鍵?

[英]Foreign keys in many-to-many relationship?

我對需要存儲在多對多關系表中的內容感到有點困惑。

如果我有兩個表:Flight 和 Company,我需要在 CompanyFlights 表中存儲什么?

例如,這張表是只需要包含航班號和公司唯一名稱,還是還需要包含公司總部地址、航班目的地和出發地等更多信息?

如果航班有兩個外鍵用於目的地和出發地 ID,引用另一個表 Location?

CompanyFlights 表是否可以包含這些引用 Location 表的外鍵,這些外鍵是 Flight 表的外鍵?

最少有兩列——其他兩個表中每個表的主鍵,也許您稱它們為flight_idcompany_id 它們中的每一個都可能是它們表中的AUTO_INCREMENT ,但映射表中不需要 auto_inc。

有關索引的討論,請參見: http://mysql.rjweb.org/doc.php/index_cookbook_mysql#many_to_many_mapping_table

特定於航班的所有內容都應該在Flights表中。 Companies同上。 應該在 many:many 表中。

一些模式設計者添加另一列用於排序或對關系進行某種限定。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM