在資料庫中具體建立表結構的時候,需要建立外來鍵嗎

時間 2021-05-31 08:42:13

1樓:

馮大輝、響馬等老司機在某些特定場合不用外來鍵是因為他們有能力把控業務層的設計和實現,用一定代價來換取對極端效能的追求。

你同事在任何場合都不用外來鍵,只是因為智商不夠,學不會正經的關聯式資料庫。

2樓:itlr

絕大多數書庫並不需要強制引用一致性,所以絕大多數時候意義不大。

當業務資料的引用一致性十分關鍵的時候,外來鍵才有意義,比如有互生關係的表。

3樓:韓鍇

一般是要建立的。

雖然DDD強調以領域邏輯為核心,要在業務層保證資料一致性,但是這和建立外來鍵約束並不矛盾。畢竟,資料對於乙個企業是最重要的資產,而應用層會變化,比如從遷移到不同的語言平台。如果所有約束資訊都保留在應用層,難免這些知識會丟失。

4樓:

表的外來鍵是為了保證資料的完整性和一致性,不建立外來鍵的話就必須在程式中保證資料的完整性,建立外來鍵的話程式測試、調bug麻煩,自己選擇。

5樓:劉鑫

看應用,用得到就用,用不到不強折騰。外來鍵本身就是個功能而已。想都不想就說外來鍵有害那都是被MySQL社群的一些錯誤觀點給毒害了。

Arcgis建立的個人資料庫和檔案資料庫有什麼區別呢?

xomap Personal GDB 檔案實質是Access庫,檔案大小最大2G。File GDB則沒有檔案大小上線,且可以跨平台。 補充,gdb可以使用gdal驅動中的filegdb api進行簡單讀寫 相同 均為GeoDatabase資料模型的實現,均為物件導向的地理資料庫,不開源 不同 個人地...

資料庫儲存資料的時候,相同資料分表 分庫的優劣是什麼?

jeff 1.為什麼分庫分表 單個表的資料量過大的時候,會影響操作的效能,這是最直接的原因。對於mysql 來說,單個表的達到多大的資料量才會影響效能,跟資料熱度和設計都有關係。如果是流水式的表,也就是歷史資料很少會更新或者查詢,乙個表上億的記錄數影響都不大,如果是innodb 表最好是自增主鍵,插...

關係型資料庫,資料庫表設計,兩個表的連線關係是多對多,連線表的設計除了傳統的設計方案外還有其他設計方案麼?或者說有幾種可能的設計方案。

王璐 你所說的符合正規化的設計肯定是設計的第一步,之後的設計要看業務具體怎麼用這些資料。馬上就能想到的幾點是 未完成的訂單備受關注 已完成的訂單不會有修改。要解決題目中的查詢壓力,簡單的方案是 把未完成單 三月內單 歷史訂單分開儲存。當然對於前端的處理和快取也能有效減少查詢和查詢壓力。 LS的已經回...