PDO :: beginTransaction
Manuale PHP DOP di riferimento
PDO :: BeginTransaction avviare una transazione (PHP 5> = 5.1.0, PECL DOP> = 0.1.0)
spiegazione
grammatica
bool PDO::beginTransaction ( void )
Disattivare la modalità autocommit. Modalità autocommit è disattivata, allo stesso tempo, da DOP oggetto cambia istanze apportate al database fino a quando si chiama il PDO :: commit () per terminare l'operazione è stata presentata solo.
Chiamando PDO :: rollback () sarà il rollback delle modifiche apportate al database e la connessione al database ritorna in modalità autocommit.
Alcuni database tra cui MySQL, quando un simile problema DROP TABLE o CREATE TABLE istruzioni DDL tale, essa sarà automaticamente una transazione implicita commit.
Implicitamente o esplicitamente impegnati impedirà si tira indietro altre modifiche che rientrano nell'ambito di questa transazione.
Valore di ritorno
ritorno di successo TRUE, o in caso di errore restituisce false.Esempi
Rollback di una transazione
Il seguente esempio di questo cambiamento prima che il rollback inizia una transazione ed emette due dichiarazioni che modificano il database.
Tuttavia, in MySQL, DROP TABLE impegna automaticamente la transazione, in modo che eventuali cambiamenti in questa transazione non saranno annullate.
<?php /* 开始一个事务,关闭自动提交 */ $dbh->beginTransaction(); /* 更改数据库架构及数据 */ $sth = $dbh->exec("DROP TABLE fruit"); $sth = $dbh->exec("UPDATE dessert SET name = 'hamburger'"); /* 识别出错误并回滚更改 */ $dbh->rollBack(); /* 数据库连接现在返回到自动提交模式 */ ?>