DB_common::rollback()

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

Synopsis

mixed rollback ( )

Description

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

Return value

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

Throws

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

Note

This function can not be called statically.

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

Example

rollback() の使用法

<?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($rowDB_FETCHMODE_ORDERED)) {
    if (
$row[0] == 'problem') {
        
$db->rollback();
    }
}
$res->free();

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