国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > PHP > 正文

php處理事務的提交與回滾

2020-03-22 20:07:27
字體:
來源:轉載
供稿:網友
這篇文章主要介紹了php利用事務處理轉賬問題的方法,實例分析了php處理事務的提交與回滾的技巧,需要的朋友可以參考下

本文實例講述了php+Mysqli利用事務處理轉賬問題的方法。分享給大家供大家參考

 ?php  header( Content-type:text/html; charset=utf-8  $mysqli = new mysqli( localhost , root , 064319 , php  $mysqli- set_charset( utf8  if($mysqli- connect_errno) {  die( 數據庫連接失敗 .$mysqli- connect_error);  $mysqli- autocommit(false); //自動提交模式設為false  $flag = true; //事務是否成功執行的標志  $query = update account set balance=balance-1000 where id=3  $result = $mysqli- query($query);  $affected_count = $mysqli- affected_rows;  if(!result || $affected_count == 0) { //失敗  $flag = false;  $query = update account set balance=balance+1000 where id=2  $result = $mysqli- query($query);  $affected_count = $mysqli- affected_rows;  if(!$result || $affected_count == 0) {  $flag = false;  if($flag) {  $mysqli- commit();  echo 轉賬成功  } else {  $mysqli- rollback();  echo 轉賬失敗  $mysqli- autocommit(true); //重新設置事務為自動提交  $mysqli- close(); ? 

代碼二:

 ?php  try{  $pdo=new PDO( mysql:host=localhost;dbname=psp , root ,  $pdo- exec( set names utf8  $pdo- setAttribute(PDO::ATTR_ERRMODE,PDO::ERRMODE_EXCEPTION);//設置異常處理模式  $pdo- setAttribute(PDO::ATTR_AUTOCOMMIT,0);//關閉自動提交  }catch(PDOException $e){  echo 數據庫連接失敗  exit;  try{  $age=10;  $pdo- beginTransaction();//開始事務  $affected_rows1=$pdo- exec( update kfry set k_age=k_age+{$age} where k_name= user1  $affected_rows2=$pdo- exec( update kfry set k_age=k_age-{$age} where k_name= user2 //隨意更改使之執行成功或失敗  /* if($affected_rows1 $affected_rows2)  $pdo- commit();  echo 操作成功  }else{  $pdo- rollback();  } */ if(!$affected_rows1)  throw new PDOException( 加入錯誤  if(!$affected_rows2)  throw new PDOException( 減少錯誤  echo 操作成功  $pdo- commit();//如果執行到此處前面兩個更新sql語句執行成功,整個事務執行成功  }catch(PDOException $e){  echo 操作失敗: .$e- getMessage();  $pdo- rollback();//執行事務中的語句出了問題,整個事務全部撤銷  $pdo- setAttribute(PDO::ATTR_AUTOCOMMIT,1);  //測試是否成功  echo /n操作結果為:/n  $sql= select * from kfry  $result=$pdo- query($sql);  foreach($result as $v)  echo $v[ k_name ]. .$v[ k_age ]. /n ? 

總結:以上就是本篇文的全部內容,希望能對大家的學習有所幫助。

相關推薦:

PHP中static關鍵字的定義、遲綁定以及與self關鍵字的區別

php大規模數據提交的方法

php針對文件夾操作的方法

以上就是php處理事務的提交與回滾的詳細內容,PHP教程

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 潼南县| 康定县| 通道| 宁德市| 卓资县| 平山县| 莱芜市| 义马市| 张家川| 北碚区| 江川县| 凤台县| 元阳县| 营口市| 武宣县| 昌黎县| 广昌县| 伊川县| 寻乌县| 兴仁县| 昭觉县| 汉源县| 宜良县| 南丰县| 汽车| 富宁县| 龙游县| 疏勒县| 祁阳县| 调兵山市| 满城县| 荣成市| 吉木萨尔县| 阿合奇县| 马山县| 山丹县| 梅州市| 黔江区| 静安区| 卢龙县| 浦北县|