<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>

                ??一站式輕松地調用各大LLM模型接口,支持GPT4、智譜、豆包、星火、月之暗面及文生圖、文生視頻 廣告
                # DBMS 中的事務管理 > 原文: [https://beginnersbook.com/2017/09/transaction-management-in-dbms/](https://beginnersbook.com/2017/09/transaction-management-in-dbms/) **事務**是一組邏輯相關的操作。例如,您正在將資金從您的銀行帳戶轉移到您朋友的帳戶,操作集將如下所示: ## 簡單事務示例 1. 閱讀您的賬戶余額 2. 扣除余額中的金額 3. 將余額寫入您的賬戶 4. 讀取您朋友的賬戶余額 5. 將金額添加到他的賬戶余額 6. 將新的更新余額寫入其賬戶 這整組操作可以稱為事務。雖然我已在上面的示例中向您展示了讀取,寫入和更新操作,但事務可以具有讀取,寫入,插入,更新,刪除等操作。 **在 DBMS 中,我們寫下以下 6 個步驟的事務:** 假設您的賬戶是 A 而您朋友的賬戶是 B,您要從 A 轉移 10000 到 B,事務的步驟是: ``` 1. R(A); 2. A = A - 10000; 3. W(A); 4. R(B); 5. B = B + 10000; 6. W(B); ``` 在上述事務中 **`R`** 是指**讀操作**, **`W`** 是指**寫操作**。 ## 操作之間的事務失敗 現在我們了解什么是事務,我們應該了解與之相關的問題。 事務期間可能發生的主要問題是在完成集合中的所有操作之前事務可能會失敗。這可能是由于電源故障,系統崩潰等原因造成的。這是一個嚴重的問題,可能會使數據庫處于不一致狀態。假設事務在第三次操作后失敗(參見上面的示例),那么金額將從您的帳戶中扣除,但您的朋友將不會收到該金額。 為了解決這個問題,我們有以下兩個操作 **提交:**如果事務中的所有操作都成功完成,則永久地將這些更改提交到數據庫。 **回滾:**如果任何操作失敗,則回滾之前操作完成的所有更改。 即使這些操作可以幫助我們避免在事務期間可能出現的幾個問題,但是當兩個事務同時運行時它們是不夠的。要處理這些問題,我們需要了解數據庫 [ACID 屬性](https://beginnersbook.com/2015/04/acid-properties-in-dbms/)。
                  <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>

                              哎呀哎呀视频在线观看