Rechercher une fonction PHP

sqlsrv_commit

(No version information available, might only be in Git)

sqlsrv_commitValide une transaction commencée avec la fonction sqlsrv_begin_transaction()

Description

sqlsrv_commit ( resource $conn ) : bool

Valide une transaction commencée par la fonction sqlsrv_begin_transaction(). La connexion est retournée en mode auto-commit après l'appel à la fonction sqlsrv_commit(). La transaction validée inclut toutes les requêtes exécutées après un appel à la fonction sqlsrv_begin_transaction(). Les transactions doivent commencer, être valider ou être annuler en utilisant ces fonctions au lieu d'utiliser des requêtes déclarant le début ou l'annulation d'une transaction. Pour plus d'informations, reportez-vous aux » transactions SQLSRV.

Retour à la première page de Manuel PHP  Table des matières Haut

Liste de paramètres

conn

La connexion sur laquelle la transaction va être validée.

Retour à la première page de Manuel PHP  Table des matières Haut

Valeurs de retour

Cette fonction retourne TRUE en cas de succès ou FALSE si une erreur survient.

Retour à la première page de Manuel PHP  Table des matières Haut

Exemples

Exemple #1 Exemple avec sqlsrv_commit()

L'exemple suivant montre la façon d'utiliser la fonction sqlsrv_commit() avec sqlsrv_begin_transaction() et sqlsrv_rollback().

<?php
$serverName 
"serverName\sqlexpress";
$connectionInfo = array( "Database"=>"dbName""UID"=>"userName""PWD"=>"password");
$conn sqlsrv_connect$serverName$connectionInfo);
if( 
$conn === false ) {
    die( 
print_rsqlsrv_errors(), true ));
}

/* Début de la transaction. */
if ( sqlsrv_begin_transaction$conn ) === false ) {
     die( 
print_rsqlsrv_errors(), true ));
}

/* Initialisation des paramètres. */
$orderId 1$qty 10$productId 100;

/* Définition et exécution de la première requête. */
$sql1 "INSERT INTO OrdersTable (ID, Quantity, ProductID)
         VALUES (?, ?, ?)"
;
$params1 = array( $orderId$qty$productId );
$stmt1 sqlsrv_query$conn$sql1$params1 );

/* Définition et exécution de la seconde requête. */
$sql2 "UPDATE InventoryTable 
         SET Quantity = (Quantity - ?) 
         WHERE ProductID = ?"
;
$params2 = array($qty$productId);
$stmt2 sqlsrv_query$conn$sql2$params2 );

/* Si les deux requêtes ont réussi, on commit la transaction. */
/* Sinon, on l'annule. */
if( $stmt1 && $stmt2 ) {
     
sqlsrv_commit$conn );
     echo 
"Transaction validée.<br />";
} else {
     
sqlsrv_rollback$conn );
     echo 
"Transaction annulée.<br />";
}
?>

Retour à la première page de Manuel PHP  Table des matières Haut

Voir aussi

Rechercher une fonction PHP

Document créé le 30/01/2003, dernière modification le 26/10/2018
Source du document imprimé : https://www.gaudry.be/php-rf-sqlsrv-commit.html

L'infobrol est un site personnel dont le contenu n'engage que moi. Le texte est mis à disposition sous licence CreativeCommons(BY-NC-SA). Plus d'info sur les conditions d'utilisation et sur l'auteur.

Références

  1. Consulter le document html Langue du document :fr Manuel PHP : http://php.net

Ces références et liens indiquent des documents consultés lors de la rédaction de cette page, ou qui peuvent apporter un complément d'information, mais les auteurs de ces sources ne peuvent être tenus responsables du contenu de cette page.
L'auteur de ce site est seul responsable de la manière dont sont présentés ici les différents concepts, et des libertés qui sont prises avec les ouvrages de référence. N'oubliez pas que vous devez croiser les informations de sources multiples afin de diminuer les risques d'erreurs.

Table des matières Haut