PDO :: rollback
PDO :: rollback - rollen eine Transaktion (PHP 5> = 5.1.0, PECL gU> = 0.1.0) zurück
Erklärung
Grammatik
bool PDO::rollBack ( void )
Rollback der aktuellen Transaktion durch das PDO :: begintransaction () initiiert. Wenn keine Transaktion aktiv ist, wird eine Ausnahme PDOException werfen.
Wenn die Datenbank auf Auto-Commit-Modus eingestellt ist, wird diese Funktion (Methode) wiederhergestellt werden, nachdem die Transaktion auto-commit Modus gerollt wird zurück.
Einige Datenbanken einschließlich MySQL, wenn eine Transaktion ähnlich zu löschen oder Datentabellen erstellen usw. DLL-Anweisung, wird es automatisch zu einer impliziten führen zu begehen. Implizit wird nicht von dieser Transaktion im Rahmen der Lage sein, eingereicht alle Änderungen rückgängig zu machen.
Rückgabewert
Erfolgreiche Rückkehr TRUE, oder bei einem Fehler FALSCH.
Beispiele
Setzt eine Transaktion zurück
Das folgende Beispiel setzt die Änderungen vor dem Beginn einer Transaktion zurück und gibt zwei Aussagen, die die Datenbank ändern. Doch in MySQL, TABLE-Anweisung DROP automatisch verpflichtet, die Transaktion, so dass alle Änderungen in dieser Transaktion nicht rückgängig gemacht werden.
<?php /* 开始一个事务,关闭自动提交 */ $dbh->beginTransaction(); /* 更改数据库架构和数据 */ $sth = $dbh->exec("DROP TABLE fruit"); $sth = $dbh->exec("UPDATE dessert SET name = 'hamburger'"); /* 识别错误且回滚更改 */ $dbh->rollBack(); /* 此时数据库连接恢复到自动提交模式 */ ?>