PDO::commit confirma una transacción (PHP 5 >= 5.1.0, PECL pdo >= 0.1.0)
bool PDO::commit (anular)
Confirme una transacción y la conexión de la base de datos volverá al modo de confirmación automática hasta la siguiente llamada a PDO::beginTransaction() para iniciar una nueva transacción.
<?php/* Iniciar una transacción y desactivar la confirmación automática */$dbh->beginTransaction();/* Insertar varias filas de registros en base a todo o nada (todo o nada) */$ sql = 'INSERTAR EN fruta (nombre, color, calorías) VALORES (?, ?, ?)';$sth = $dbh->prepare($sql);foreach ($frutas como $frutas) { $algo->ejecutar(array( $fruta->nombre, $fruta->color, $fruta->calorías, ));}/* Confirmar cambios*/$dbh->commit();/* Ahora conéctese a base de datos Volver al modo de confirmación automática*/?>
<?php/* Iniciar una transacción y desactivar el envío automático */$dbh->beginTransaction();/* Cambiar el esquema de la base de datos */$sth = $dbh->exec("DROP TABLE fruit");/* Cambiar el esquema de la base de datos*/$dbh->commit();/* Ahora la conexión de la base de datos vuelve al modo de confirmación automática*/?>
Nota: No todas las bases de datos permiten operaciones de transacciones utilizando declaraciones DDL: algunas generarán errores, mientras que otras (incluido MySQL) confirmarán transacciones automáticamente después de encontrar la primera declaración DDL.