強制 不得使用外來鍵和級聯 一切外來鍵概念必須在應用層解決
外來鍵的好處
外來鍵保證了資料的完整性和一致性,並且使得級聯操作方便,將資料庫的完整性判斷託付給了資料庫完成,減少了程式的**量。
外來鍵的壞處
效能下降每次對資料進行delete或update操作都必須考慮外來鍵約束 資料庫都會判斷當前操作是否違反資料完整性,效能下降。
死鎖使用外來鍵,外來鍵關聯的資料查詢要去另一張表,獲取額外的鎖,容易造成死鎖。
擴充套件性問題
觸發器 外來鍵 這種依賴於資料庫本身的特性 可擴充套件性較差 歷史資料的遷移可能是比較頭疼的問題
資料庫不使用外來鍵
在公司中,看資料庫表的設計是不用外來鍵的。在初學資料庫的時候,經常用到了外來鍵約束。在論壇中檢視討論的時候,一般人都說很少用外來鍵。因為我們完全可以在業務 程式控制和事務 上處理表之間關係。一般網際網路應用沒必要使用外來鍵,外來鍵會帶來一系列不好的影響 1.資料庫需要維護外來鍵的內部管理 2.外來鍵...
資料庫設計外來鍵
今天心情很煩躁,公司來了新員工,我感覺到自己這個渣渣要晚年不保啊,隨後就隨便網上逛逛,看到這個挺有意思。設計外來鍵竟然還有人不會?哈哈哈,這不是說我呢嘛!外來鍵一般用於一對多的時候,比如說某個型別type下面可能有多個物件。訂單的話,乙個訂單號肯定會有關於這個訂單 號碼 的訂單詳情,這是給客戶看的,...
資料庫外來鍵的使用
在知乎上看到了一位圈友分享的關於外來鍵使用的一些分析 外來鍵是否採用看業務應用場景,以及開發成本的,大致列下什麼時候適合,什麼時候不適合使用 1.網際網路行業應用不推薦使用外來鍵 使用者量大,併發度高,為此資料庫伺服器很容易成為效能瓶頸,尤其受io能力限制,且不能輕易地水平擴充套件 若是把資料一致性...