mysqli_rollback
(PHP 5)
mysqli_rollback
(no version information, might be only in CVS)
mysqli->rollback -- Rolls back current transaction
Description
bool
mysqli_rollback ( mysqli link )
class
mysqli {
bool
rollback ( void )
}
Rollbacks the current transaction for the database specified by the
link parameter.
Valores de retornado
Retorna TRUE em caso de sucesso ou FALSE em falhas.
Exemplos
Exemplo 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(); ?>
|
|
Exemplo 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); ?>
|
|
O exemplo acima irá imprimir:
0 rows in table myCity.
50 rows in table myCity (after rollback). |