DB_common::rollback()

DB_common::rollback() -- 現在のトランザクションをロールバックする

概要

mixed rollback ()

説明

現在のトランザクションをロールバックします。

返り値

integer - 成功した場合に DB_OK、 失敗した場合に DB_Error オブジェクトを返します。

例外・エラー

表 33-1PEAR_Error の値

エラーコードエラーメッセージ原因対応法
すべてのエラーコード  データベース固有のエラー。 PHP マニュアル のデータベース関連の部分をチェックし、エラーの原因を見つけます。

注意

この関数は、スタティックにコールする ことはできません。

DBMS として MySQL を使用している場合は、対象テーブルが InnoDB 形式を使用している場合にのみトランザクションが使用できます。

例 33-1rollback() の使用法


<?php
// $db という名前の DB オブジェクトが作成済みであると仮定します...

$db->autoCommit(false);

$db->query('INSERT INTO blah (a) VALUES (11)');

$res =& $db->query('SELECT b FROM blue');
if (DB::isError($res)) {
    echo $res->getMessage() . "\n";
}
while ($res->fetchInto($row, DB_FETCHMODE_ORDERED)) {
    if ($row[0] == 'problem') {
        $db->rollback();
    }
}
$res->free();

$db->query('DROP TABLE blah');
$db->commit();
?>

参照

commit() autoCommit()