PDO :: beginTransaction
PDO :: BeginTransaction iniciar una transacción (PHP 5> = 5.1.0, PECL pdo> = 0.1.0)
explicación
gramática
bool PDO::beginTransaction ( void )
Desactivar el modo de confirmación automática. Modo de confirmación automática está desactivada, al mismo tiempo, por ejemplo DOP objeto cambia realizados en la base de datos hasta que llame la PDO :: commit () para finalizar la transacción no fue presentada.
Llamar a PDO :: rollback () va a deshacer los cambios realizados en la base de datos y la conexión de base de datos vuelve al modo Autocommit.
Algunas bases de datos incluyendo MySQL, cuando un tema TABLA caída similar o crear instrucciones de DDL tabla de este tipo, que serán automáticamente una transacción implícita comete.
Implícita o explícitamente comprometido impedirá que se está restituyendo cualquier otro cambio en el ámbito de esta transacción.
Valor de retorno
exitoso retorno es TRUE, o en caso de error devuelve falso.Ejemplos
Deshacer una transacción
El siguiente ejemplo de este cambio antes de la reversión se inicia una transacción y emite dos comandos que modifiquen la base de datos.
Sin embargo, en MySQL, TABLE DROP confirma automáticamente la transacción, por lo que cualquier cambio en esta transacción no se revertirán.
<?php /* 开始一个事务,关闭自动提交 */ $dbh->beginTransaction(); /* 更改数据库架构及数据 */ $sth = $dbh->exec("DROP TABLE fruit"); $sth = $dbh->exec("UPDATE dessert SET name = 'hamburger'"); /* 识别出错误并回滚更改 */ $dbh->rollBack(); /* 数据库连接现在返回到自动提交模式 */ ?>