首頁  >  文章  >  後端開發  >  PHP中PDO的事務處理的方法及實例分析

PHP中PDO的事務處理的方法及實例分析

墨辰丷
墨辰丷原創
2018-06-04 09:58:571596瀏覽

這篇文章主要介紹了PHP中PDO的事務處理,結合實例形式分析使用PDO進行事務處理的相關技巧,需要的朋友可以參考下

事務處理具有四個特性:原子性、一致性、獨立性、持久性。

並不是所有的資料庫都支援事務處理的,PDO 為能夠執行事務處理的資料庫提供事務支援。

設定事務處理需注意:

1、關閉PDO 的自動提交;

$pdo->setAttribute(PDO::ATTR_AUTOCOMMIT, false);

2、開啟一個交易所需的方法;

$pdo->beginTransaction(); // 开启一个事务
$pdo->commit(); // 提交事务
$pdo->rollback(); // 回滚事务

3、一般事務處理是運行在try...catch...語句中,當事務失敗時執行catch 程式碼區段。

<?php
try {
  $pdo->beginTransaction(); // 开启一个事务
  $row = null;
  $row = $pdo->exec("xxx"); // 执行第一个 SQL
  if (!$row)
    throw new PDOException(&#39;提示信息或执行动作&#39;); // 如出现异常提示信息或执行动作
  $row = $pdo->exec("xxx"); // 执行第二个 SQL
  if (!$row)
    throw new PDOException(&#39;提示信息或执行动作&#39;);
  $pdo->commit();
} catch (PDOException $e) {
  $pdo->rollback(); // 执行失败,事务回滚
  exit($e->getMessage());
}
?>

在交易中的 SQL 語句,如果發生錯誤,那麼所有的 SQL 都不執行。當所有 SQL 有無誤的時候,才提交執行。

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

相關推薦:

PHP使用header方式實作檔案下載功能

PHP基於QRCODE產生彩色二維碼的方法

PHP實作登入驗證碼功能及呼叫方法

以上是PHP中PDO的事務處理的方法及實例分析的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn