程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> Oracle數據庫 >> Oracle教程 >> Oracle與Mysql數據的事務處理機制

Oracle與Mysql數據的事務處理機制

編輯:Oracle教程

Oracle與Mysql數據的事務處理機制


相比oracle的事務處理,Mydql相對還是簡單一點的,但是事務作為一項重要的安全機制在數據庫裡面是必不可少的,特別是裡面的事務回滾機制非常的有用,不多說了,先說一下mysql的事務處理:

Mysql簡單的回滾:

第一步:開始事務:start transaction;

第二步:執行dml等其他的變化操作。

第三步:混滾到開始事務之前狀態: rollback;

這樣的話在執行完畢之後就發現之前的一些操作沒有執行成功。只有commit提交之後才會真正的把數據提交。但是,還要考慮下面的兩種情況,一種是服務關閉的情況,這樣我們的數據回滾在沒有提交的情況下是有真正的去執行,還有就是回滾是能夠用一次,再次使用雖然不報錯,但是不起任何作用。

如果你會說了,我想在一次事務中國實現多次回滾怎麼辦,這裡你可以使用設置保存點:

在上面的第二步中,你可以這樣一下: savepoint 保存點1(名稱而已);

然後你繼續執行dml,到了耨一個地方繼續savepoint 保存點2;

你是不是想通過rollback to 保存點的方式會滾到之前的狀態。但是,不得不告訴你,旺旺想想的和顯示的情況並不是一模一樣,你會發現只能夠滾滾到第一個保存 點,其他的保存點會提示不存在!

Oracle的事務處理:

Oracle是不用說明開啟事務的,針對dml語句,當你設置保存點,接下來的步驟如上返回到保准點同樣的用commit提交事務。

但是,我這裡就總結出了一個重要的原則:事務回滾只能反方向一直逆行,這個過程已然不可逆。除非提交結束事務。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved