sqlsrv_execute

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

sqlsrv_executeExécute une requête préparée avec la fonction sqlsrv_prepare()

Description

bool sqlsrv_execute ( resource $stmt )

Exécute une requête préparée avec la fonction sqlsrv_prepare(). Cette fonction est idéale pour exécuter une requête préparée à plusieurs reprises avec des valeurs différentes pour les paramètres.

Liste de paramètres

stmt

Une ressource de requête retournée par la fonction sqlsrv_prepare().

Valeurs de retour

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

Exemples

Exemple #1 Exemple avec sqlsrv_execute()

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

$sql = "UPDATE Table_1
		SET OrderQty = ?
		WHERE SalesOrderID = ?";

// Initialise les paramètres et prépare la requête.
// Les variables $qty et $id sont liées à la requête, $stmt.
$qty = 0; $id = 0;
$stmt = sqlsrv_prepare( $conn, $sql, array( &$qty, &$id));
if( !$stmt ) {
	die( print_r( sqlsrv_errors(), true));
}

// Définition des informations SalesOrderDetailID et OrderQty.
// Ce tableau lie l'ID order à la quantitié order dans une paire key=>value.
$orders = array( 1=>10, 2=>20, 3=>30);

// Exécute la requête pour chaque ordre.
foreach( $orders as $id => $qty) {
	// En raison du que $id et $qty sont liés à $stmt1, leurs valeurs
	// mise à jour sont utilisées lors de chaque exécution de la requête. 
	if( sqlsrv_execute( $stmt ) === false ) {
		  die( print_r( sqlsrv_errors(), true));
	}
}
?>

Notes

Lorsque vous préparez une requête qui utilisent des variables comme paramètres, les variables sont liées à la requête. Cela signifie que si vous mettez à jour les valeurs des variables, la prochaine exécution de la requête utilisera les valeurs mises à jour. Pour les requêtes que vous prévoyez d'utiliser qu'une seule fois, utilisez plutôt la fonction sqlsrv_query().

Voir aussi

LoadingChargement en cours