<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                合規國際互聯網加速 OSASE為企業客戶提供高速穩定SD-WAN國際加速解決方案。 廣告
                ## 約束 #### 外鍵約束 通過建立外鍵關系之后,對主表和從表都會有一定的數據約束效率. #### 約束的基本概念 1. 當一個外鍵產生時:外鍵所在的表(從表)會受制于主表數據的存在從而導致數據不能進行某些不符合規范的操作(不能插入主表不存在的數據). 2. 如果一張表被其他表外鍵引入,那么該表的數據操作就不能隨意:必須保證從表數據的有效性(不能隨便刪除一個被從表引入的記錄). #### 外鍵約束的概念 可以在創建外鍵的時候,對外鍵約束進行選擇性的操作. 語法: ~~~ ~~~ 如: ~~~ alter table 從表 add foreign key(從表外鍵字段) references 主表(主表主鍵) on update cascade on delete set null; ~~~ 約束模式有三種: 1. district : 嚴格模式,默認的. 不允許操作. 2. cascade : 級聯模式,一起操作,主表變化,從表跟著變化. 3. set null : 置空模式,主表變化,從表對應記錄設置為空. 前提是從表中對應的外鍵字段允許為空. **外鍵約束主要約束的對象是主表操作:從表就是不能插入主表不存在的數據.** 通常在進行約束時候的時候,需要指定操作:update和delete. 常用的約束模式: on update cascade, on delete set nul,**更新級聯,刪除置空.** #### 約束作用 保證數據的完整性:**主表與從表的數據要一致** 正是因為外鍵有非常強大的數據約束作用,而且可能導致數據在后臺變化的不可控。導致程序在進行設計開發邏輯的時候,沒有辦法去很好的把握數據(業務),**所以外鍵比較少使用**。 Zm:數據的一致性需求肯定存在,實現它有兩個方式 一種就是數據庫自帶的外鍵約束(物理外鍵),一種還是我們用php代碼來實現的(邏輯外鍵) 我們說,數據庫在開發的時候,盡量讓他不要涉及到過多的業務,盡量純粹的使用他存儲、查詢數據的功能,所以我們一般不用物理外鍵,更多使用邏輯外鍵。
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看