解析php mysql 事務處理回滾操作(附實例)
很多新手在進行項目過程中,會碰到這樣一種情況,如:論壇扣幣項目中,用戶支付論壇幣的時候如果突然斷網(wǎng)、電腦死機、停電、等其它自然災害時,導致本次交易沒有成功(即用戶的幣已經(jīng)扣掉了,但是服務器數(shù)據(jù)庫中沒有消費記錄等其它情況),這種情況應該怎么樣進行處理呢?
在這個時候,我們可以用Mysql事務回滾來進行處理,那代碼怎么寫呢?
那下面我就來說一說這個mysql事務回滾應該怎么處理。
首先MYSQL中只有INNODB和BDB類型的數(shù)據(jù)表才能支持事務處理!其他的類型是不支持的!
那如果,我們的數(shù)據(jù)表已經(jīng)存在,并且不是上面所說的兩種類型的話,應該怎么辦呢?
1、我可以去找一個叫MySQL-Front的軟件,里面能更改表類型。
2、我們也可以通過SQL語句來更改,sql語句可以這樣寫:
ALTER TABLE TABLENAME type = InnoDB;
將需要修類型的表全更改完成后,我們可以到PHP文件中用代碼進行測試了。
mysql_query("BEGIN"); //或者mysql_query("START TRANSACTION");
$sql = "INSERT INTO ...";
$sql2 = "INSERT INTO ...";
$res = mysql_query($sql);
$res1 = mysql_query($sql2);
if($res && $res1){
mysql_query("COMMIT");
echo '提交成功。';
}else{
mysql_query("ROLLBACK");
echo '數(shù)據(jù)回滾。';
}
mysql_query("END");
看到這里,應該知道怎么用PHP來處理mysql的事務回滾了吧。很簡單吧!
相關文章
php中simplexml_load_file函數(shù)用法實例
這篇文章主要介紹了php中simplexml_load_file函數(shù)用法,以實例形式詳細的講述了simplexml_load_file函數(shù)讀取XML文件的具體方法,非常具有實用價值,需要的朋友可以參考下2014-11-11將IP地址轉換為整型數(shù)字的PHP方法、Asp方法和MsSQL方法、MySQL方法
本篇文章是對IP地址轉換為整型數(shù)字的PHP方法、Asp方法和MsSQL方法、MySQL方法進行了詳細的分析介紹,需要的朋友參考下2013-07-07php+MySql實現(xiàn)登錄系統(tǒng)與輸出瀏覽者信息功能
這篇文章主要介紹了php+MySql實現(xiàn)登錄系統(tǒng)與輸出瀏覽者信息功能 的相關資料,需要的朋友可以參考下2016-07-07安裝apache2.2.22配置php5.4(具體操作步驟)
本篇文章是對安裝apache2.2.22配置php5.4的具體操作步驟進行了詳細的分析介紹,需要的朋友參考下2013-06-06