1. 程式人生 > 其它 >資料庫恢復及併發控制

資料庫恢復及併發控制

一、事務概述

1.1定義

事務是使用者定義的一個數據庫操作序列,這些操作要麼全做,要麼全不做,是一個不可分割的工作單元。

事務是併發控制的基本單位,是資料庫恢復的基本單位,是資料庫的邏輯基本邏輯單元。

資料庫恢復機制併發控制機制是資料庫管理系統的重要組成部分

在關係資料庫中,一個事務可以是一條SQL語句,一組SQL語句或整個程式

--顯式定義事務
begin transaction 
SQL 語句1 
……  ……
commit / rollback
 
/*
commit
    事務正常結束
    提交事務的所有操作(讀+更新)
    事務中所有對資料庫的更新寫回到磁碟上的物理資料庫中
rollback
    事務異常終止
    事務執行的過程中發生了故障,不能繼續執行
    系統將事務中對資料庫的所有已完成的操作全部撤銷
    事務滾回到開始時的狀態
*/
--將數學課程號由2修改為22
/*
解析:
所涉及的關係:Course和SC,根據參照完整性約束,應將兩表中的2都改為22。要將修改兩個表的兩個SQL語句定義成一個事務。
因為DBMS對這兩個語句要麼都執行,要不都不執行
*/ begin transaction update Course set CNO='22' where CNO='2' update SC set CNO='22' where CNO='2' commit

1.2 特性

原子性,一致性,隔離性,永續性

二、併發執行導致的問題

丟失資料,讀"髒"資料,不可重複讀.

本文來自部落格園,作者:世間,轉載請註明原文連結:https://www.cnblogs.com/zzj1216