(No version information available, might only be in Git)
sqlsrv_query — Prépare et exécute une requête
Prépare et exécute une requête.
conn
Une ressource de connexion retournée par la fonction sqlsrv_connect().
sql
La chaîne qui définit la requête à préparer et à exécuter.
params
Un tableau spécifiant les paramètres lors de l'exécution d'une requête les autorisant. Les éléments du tableau peuvent être n'importe lequel parmi la liste ci-dessous :
Élement | Description |
---|---|
$value | Une valeur littérale, une variable PHP ou une variable PHP par référence. |
$direction (optional) | Une des constantes SQLSRV suivantes utilisées pour indiquer la direction du paramètre : SQLSRV_PARAM_IN, SQLSRV_PARAM_OUT, SQLSRV_PARAM_INOUT. La valeur par défaut est SQLSRV_PARAM_IN. |
$phpType (optional) | Une constante SQLSRV_PHPTYPE_* qui spécifie le type de données PHP de la valeur retournée. |
$sqlType (optional) | Une constante SQLSRV_SQLTYPE_* qui spécifie le type de données du serveur SQL pour la valeur en entrée. |
options
Un tableau spécifiant les options de la requête. Les clés supportés sont décrites dans le tableau suivant :
Clé | Valeur | Description |
---|---|---|
QueryTimeout | Une valeur entière positive. | Définit le délai d'exécution maximal de la requête en seconde. Par défaut, le driver attendra indéfiniment les résultats. |
SendStreamParamsAtExec | TRUE ou FALSE (par défaut, vaut TRUE ) |
Configure le driver pour envoyer tous les flux de données
à l'exécution (TRUE ) ou envoyer les flux de données en morceaux
(FALSE ). Pour plus d'informations, voir la fonction
sqlsrv_send_stream_data(). |
Scrollable | SQLSRV_CURSOR_FORWARD, SQLSRV_CURSOR_STATIC, SQLSRV_CURSOR_DYNAMIC, ou SQLSRV_CURSOR_KEYSET | Voir le chapitre sur » la spécification d'un type de curseur et la sélection de lignes dans la documentation Microsoft SQLSRV. |
Retourne une ressource de requête en cas de succès, et FALSE
si une
erreur survient.
Exemple #1 sqlsrv_query() example
<?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 = "INSERT INTO Table_1 (id, data) VALUES (?, ?)";
$params = array(1, "some data");
$stmt = sqlsrv_query( $conn, $sql, $params);
if( $stmt === false ) {
die( print_r( sqlsrv_errors(), true));
}
?>
Pour les requêtes que vous ne prévoyez d'exécuter qu'une seule fois, utilisez la fonction sqlsrv_query(). Si vous souhaitez ré-exécuter une requête avec des valeurs différentes pour ses paramètres, utilisez la combinaison de la fonction sqlsrv_prepare() et de la fonction sqlsrv_execute().