PHP mysqli rollback()

La fonction rollback() / mysqli_rollback() est une fonction intégrée en PHP qui annule la transaction en cours. Regardez également la fonction commit(), qui valide la transaction en cours, et la fonction autocommit(), qui active ou désactive automatiquement les modifications apportées à une base de données.
 

Syntaxe

Style procédural:

mysqli_rollback(conn, flags, name)

 
Style orienté objet:

$mysqli->rollback(flags, name)

 
 

Voir aussi : commit(), autocommit()
Paramètres
  • conn(Obligatoire) : Spécifie la connexion MySQL à utiliser.
  • flags(Optionnel) : Une constante peut être:
    • MYSQLI_TRANS_COR_AND_CHAIN : Ajoute « AND CHAIN »
    • MYSQLI_TRANS_COR_AND_NO_CHAIN : Ajoute « AND NO CHAIN »
    • MYSQLI_TRANS_COR_RELEASE : Ajoute « RELEASE »
    • MYSQLI_TRANS_COR_NO_RELEASE : Ajoute « NO RELEASE »
  • name(Optionnel) : ROLLBACK/*name*/ est exécuté si ce paramètre est spécifié.

 

Valeur de retour

La fonction renvoie TRUE en cas de succès. FALSE en cas d’échec.
 

Version PHP:

5+
 

Exemple – Style procédural:
<?php
$conn = mysqli_connect("localhost", "root", "password", "db_name");

// Vérifier la connexion
if (mysqli_connect_errno()) {
  echo "Impossible de se connecter à MySQL: " . mysqli_connect_error();
  exit();
}

// Désactiver la validation automatique
mysqli_autocommit($conn, FALSE);

// Insérez des valeurs
mysqli_query($conn, "INSERT INTO Users (name,age) VALUES ('Alex',22)");

// Valider la transaction
if (!$mysqli_commit($conn)) {
  echo "Échec de validation de la transaction";
  exit();
}

// Annuler la transaction
mysqli_rollback($conn);

// Fermer la connexion
mysqli_close($conn);
?>

 
 

Exemple – Style orienté objet:
<?php
$mysqli = new mysqli("localhost", "root", "password", "db_name");

// Vérifier la connexion
if ($mysqli->connect_errno) {
  echo "Impossible de se connecter à MySQL: " . $mysqli->connect_error;
  exit();
}

// Désactiver la validation automatique
$mysqli->autocommit(FALSE);

// Insérez des valeurs
$mysqli->query("INSERT INTO Users (name,age) VALUES ('Alex',22)");

// Valider la transaction
if (!$mysqli->commit()) {
  echo "Échec de validation de la transaction";
  exit();
}

// Annuler la transaction
$mysqli->rollback();

// Fermer la connexion
$mysqli->close();
?>
Questions d'entretiens PHP

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *