mysqli_rollback
(PHP 5)
mysqli_rollback
(no version information, might be only in CVS)
mysqli->rollback -- Rolls back current transaction
Description
bool
mysqli_rollback ( object link)
class
mysqli {
bool
rollback ( void )
}
Rollbacks the current transaction for the database specified by the
link parameter.
Return values
Restituisce TRUE in caso di successo, FALSE in caso di fallimento.
Example
Esempio 1. Object oriented style
<?php $mysqli = new mysqli("localhost", "my_user", "my_password", "world");
/* check connection */ if (mysqli_connect_errno()) { printf("Connect failed: %s\n", mysqli_connect_error()); exit(); }
/* disable autocommit */ $mysqli->autocommit(FALSE);
$mysqli->query("CREATE TABLE myCity LIKE City"); $mysqli->query("ALTER TABLE myCity Type=InnoDB"); $mysqli->query("INSERT INTO myCity SELECT * FROM City LIMIT 50");
/* commit insert */ $mysqli->commit();
/* delete all rows */ $mysqli->query("DELETE FROM myCity");
if ($result = $mysqli->query("SELECT COUNT(*) FROM myCity")) { $row = $result->fetch_row(); printf("%d rows in table myCity.\n", $row[0]); /* Free result */ $result->close(); }
/* Rollback */ $mysqli->rollback();
if ($result = $mysqli->query("SELECT COUNT(*) FROM myCity")) { $row = $result->fetch_row(); printf("%d rows in table myCity (after rollback).\n", $row[0]); /* Free result */ $result->close(); }
/* Drop table myCity */ $mysqli->query("DROP TABLE myCity");
$mysqli->close(); ?>
|
|
Esempio 2. Procedural style
<?php $link = mysqli_connect("localhost", "my_user", "my_password", "world");
/* check connection */ if (mysqli_connect_errno()) { printf("Connect failed: %s\n", mysqli_connect_error()); exit(); }
/* disable autocommit */ mysqli_autocommit($link, FALSE);
mysqli_query($link, "CREATE TABLE myCity LIKE City"); mysqli_query($link, "ALTER TABLE myCity Type=InnoDB"); mysqli_query($link, "INSERT INTO myCity SELECT * FROM City LIMIT 50");
/* commit insert */ mysqli_commit($link);
/* delete all rows */ mysqli_query($link, "DELETE FROM myCity");
if ($result = mysqli_query($link, "SELECT COUNT(*) FROM myCity")) { $row = mysqli_fetch_row($result); printf("%d rows in table myCity.\n", $row[0]); /* Free result */ mysqli_free_result($result); }
/* Rollback */ mysqli_rollback($link);
if ($result = mysqli_query($link, "SELECT COUNT(*) FROM myCity")) { $row = mysqli_fetch_row($result); printf("%d rows in table myCity (after rollback).\n", $row[0]); /* Free result */ mysqli_free_result($result); }
/* Drop table myCity */ mysqli_query($link, "DROP TABLE myCity");
mysqli_close($link); ?>
|
|
The above examples would produce the following output:
0 rows in table myCity.
50 rows in table myCity (after rollback). |