db2_rollback
db2_rollback
Rolls back a transaction
bool **db2_rollback** resource $connection
Rolls back an in-progress transaction on the specified connection resource and
begins a new transaction. PHP applications normally default to AUTOCOMMIT
mode, so normally has no effect unless
AUTOCOMMIT has been turned off for the connection resource.
db2_rollback
connection
A valid database connection resource variable as returned from
or .
db2_connect``db2_pconnect
return.success
Voorbeeld: Rolling back a DELETE statement
In the following example, we count the number of rows in a table, turn
off AUTOCOMMIT mode on a database connection, delete all of the rows in
the table and return the count of to prove that the
rows have been removed. We then issue
and return the updated count of rows in the table to show that the number
is the same as before we issued the DELETE statement. The return to the
original state of the table demonstrates that the roll back of the
transaction succeeded.
0``db2_rollback
<?php
$conn = db2_connect($database, $user, $password);
if ($conn) {
$stmt = db2_exec($conn, "SELECT count(*) FROM animals");
$res = db2_fetch_array( $stmt );
echo $res[0] . "\n";
// Turn AUTOCOMMIT off
db2_autocommit($conn, DB2_AUTOCOMMIT_OFF);
// Delete all rows from ANIMALS
db2_exec($conn, "DELETE FROM animals");
$stmt = db2_exec($conn, "SELECT count(*) FROM animals");
$res = db2_fetch_array( $stmt );
echo $res[0] . "\n";
// Roll back the DELETE statement
db2_rollback( $conn );
$stmt = db2_exec( $conn, "SELECT count(*) FROM animals" );
$res = db2_fetch_array( $stmt );
echo $res[0] . "\n";
db2_close($conn);
}
?>
7
0
7
db2_autocommit``db2_commit