1. 項(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ù)庫(kù)設(shè)計(jì)中,有很多鍵,像主鍵、索引鍵、唯一鍵,這些都是標(biāo)識(shí)一張表內(nèi)部的數(shù)據(jù)關(guān)系,而外鍵是標(biāo)識(shí)多張表之間的數(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ù)庫(kù)設(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ù)刷庫(kù),實(shí)際開發(fā)過程中,免不了要經(jīng)常刷庫(kù),導(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)贊
        評(píng)論
        收藏
        分享

        手機(jī)掃一掃分享

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

        手機(jī)掃一掃分享

        分享
        舉報(bào)
          
          

            1. 日本边舌吻边做爽的视频 | 广东少妇大战黑人34厘米视频 | 岛国在线网址 | 亚洲午夜色 | 男女69式互吃动态图在线观看 |