<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          項(xiàng)目開發(fā)過程中要不要使用外鍵

          共 594字,需瀏覽 2分鐘

           ·

          2021-04-02 14:23



          項(xiàng)目開發(fā)過程中,外鍵是加還是不加,分享一下個(gè)人的經(jīng)驗(yàn),供參考


          有兩位小伙伴提到了外鍵這個(gè)問題,如下:

          bf98fc0b8e53718b3c9744141bec9aba.webp


          20c1aab034d115a868579a3591e5527f.webp

          本期就“是否使用外鍵”這個(gè)問題,分享一下個(gè)人的經(jīng)驗(yàn),供參考


          數(shù)據(jù)庫設(shè)計(jì)中,有很多鍵,像主鍵、索引鍵、唯一鍵,這些都是標(biāo)識一張表內(nèi)部的數(shù)據(jù)關(guān)系,而外鍵是標(biāo)識多張表之間的數(shù)據(jù)關(guān)系


          01


          外鍵的優(yōu)點(diǎn)


          使用外鍵主要有兩個(gè)優(yōu)點(diǎn):

          • 數(shù)據(jù)準(zhǔn)確,表跟表之間有一層外鍵約束著,讓表數(shù)據(jù)更準(zhǔn)確,不至于一堆的數(shù)據(jù)冗余或數(shù)據(jù)缺失。

          • 表關(guān)系明了,數(shù)據(jù)庫設(shè)計(jì)在項(xiàng)目開發(fā)過程中很重要,有了外鍵,通過ER圖,一眼就能看出表和表之間的關(guān)系。



          02


          外鍵的缺點(diǎn)


          雖然有上面的優(yōu)點(diǎn),但是實(shí)際項(xiàng)目開發(fā)過程中,需求是一直在迭代變化的,表跟表的關(guān)系也會(huì)隨之變化,這時(shí)候外鍵就會(huì)變成累贅,總結(jié)兩個(gè)缺點(diǎn):

          • 數(shù)據(jù)刷庫,實(shí)際開發(fā)過程中,免不了要經(jīng)常刷庫,導(dǎo)入或刪除數(shù)據(jù),外鍵的存在會(huì)讓表刪除或插入失敗(表數(shù)據(jù)變更有順序要求)

          • 外鍵維護(hù),隨著項(xiàng)目的迭代,表之間的關(guān)系也會(huì)發(fā)生變化,比如有個(gè)外鍵需要?jiǎng)h除;或是要新增一個(gè)外鍵,但由于現(xiàn)有數(shù)據(jù)不準(zhǔn),導(dǎo)致外鍵加不上去,久而久之,ER圖也不能完整的顯示表關(guān)系,這ER圖看還是不看?



          03


          個(gè)人項(xiàng)目經(jīng)驗(yàn)


          就我這么多年做的項(xiàng)目來說,沒有哪個(gè)項(xiàng)目是加外鍵的,都是靠Java代碼來維護(hù)表數(shù)據(jù)關(guān)系。


          怕數(shù)據(jù)缺失?加事務(wù)!

          怕數(shù)據(jù)冗余?加事務(wù)!


          —————— THE END??——————


          掃碼關(guān)注,好文不錯(cuò)過



          瀏覽 45
          點(diǎn)贊
          評論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          評論
          圖片
          表情
          推薦
          點(diǎn)贊
          評論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  欧美18禁 | 欧美激情视频网站 | 不卡乱伦| 激情视频激情五月天 | 父女乱情沈娜娜 |