mixed rollback (
)
現在のトランザクションをロールバックします。
| エラーコード | エラーメッセージ | 原因 | 対応法 |
|---|---|---|---|
| すべてのエラーコード | データベース固有のエラー。 | PHP マニュアル のデータベース関連の部分をチェックし、エラーの原因を見つけます。 |
This function can not be called statically.
DBMS として MySQL を使用している場合は、対象テーブルが InnoDB 形式を使用している場合にのみトランザクションが使用できます。
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($row, DB_FETCHMODE_ORDERED)) {
if ($row[0] == 'problem') {
$db->rollback();
}
}
$res->free();
$db->query('DROP TABLE blah');
$db->commit();
?>