sqlsrv_errors
(No version information available, might only be in Git)
sqlsrv_errors — Retourne une erreur ainsi que certaines informations sur la dernière opération SQLSRV effectuée
Description
Retourne une erreur ainsi que certaines informations sur la dernière opération SQLSRV effectuée.
Liste de paramètres
-
errorsOrWarnings
-
Détermine si l'on doit retourner des informations sur l'erreur, des informations sur l'alerte, ou les deux. Si ce paramètre n'est pas fourni, les deux informations seront retournées. Voici la liste des valeurs supportées par ce paramètre : SQLSRV_ERR_ALL, SQLSRV_ERR_ERRORS, SQLSRV_ERR_WARNINGS.
Valeurs de retour
Si une erreur et/ou une alerte survient lors de la dernière opération SQLSRV,
un tableau de tableaux contenant les informations de l'erreur sera retourné.
Si aucune erreur ni alerte ne survient, NULL
sera retourné. Le tableau
suivant décrit la structure du tableau retourné :
Clé | Description |
---|---|
SQLSTATE | Pour les erreurs originaires du driver ODBC, ce sera le SQLSTATE retourné par ODBC. Pour les erreurs originaires du Microsoft Drivers pour PHP pour le serveur SQL, un SQLSTATE de IMSSP. Pour les alertes originaires du Microsoft Drivers pour PHP pour le serveur SQL, un SQLSTATE de 01SSP. |
code | Pour les erreurs originaires du serveur SQL, le code erreur natif du serveur SQL. Pour les erreurs originaires du ODBC driver, le code erreur retourné par ODBC. Pour les erreurs originaires du Microsoft Drivers pour PHP pour le serveur SQL, le code erreur Microsoft Drivers pour PHP pour le serveur SQL. |
message | Une description de l'erreur. |
Exemples
Exemple #1 Exemple avec functionname()
<?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));
}
/* Requête pour sélectionner un nom de colonne invalide. */
$sql = "SELECT BadColumnName FROM Table_1";
/* L'exécution de la requête va échouer car le nom de la colonne n'existe pas. */
$stmt = sqlsrv_query( $conn, $sql );
if( $stmt === false ) {
if( ($errors = sqlsrv_errors() ) != null) {
foreach( $errors as $error ) {
echo "SQLSTATE: ".$error[ 'SQLSTATE']."<br />";
echo "code: ".$error[ 'code']."<br />";
echo "message: ".$error[ 'message']."<br />";
}
}
}
?>
Notes
Par défaut, les alertes générées lors d'un appel à une fonction SQLSRV
sont traitées comme des erreurs. Cela signifie que si une alerte survient
lors d'un appel à une fonction SQLSRV, la fonction retournera FALSE
.
Cependant, les alertes qui correspondent aux SQLSTATE de valeurs
01000, 01001, 01003, et 01S02 ne seront jamais traitées comme des erreurs.
Pour plus d'informations sur la façon de modifier ce comportement, reportez-vous
à la documentation sur la fonction sqlsrv_configure()
ainsi que sur la configuration de WarningsReturnAsErrors.
Voir aussi
- sqlsrv_configure() - Modifie la configuration du gestionnaire d'erreurs et d'historisations du driver
Version en cache
05/11/2024 14:51:41 Cette version de la page est en cache (à la date du 05/11/2024 14:51:41) afin d'accélérer le traitement. Vous pouvez activer le mode utilisateur dans le menu en haut pour afficher la dernère version de la page.Document créé le 30/01/2003, dernière modification le 26/10/2018
Source du document imprimé : https://www.gaudry.be/php-rf-sqlsrv-errors.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
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.