Manuel PHP

mysqli_stmt::sqlstate

mysqli_stmt_sqlstate

(PHP 5)

mysqli_stmt::sqlstate -- mysqli_stmt_sqlstateRetourne le code SQLSTATE de la dernière opération MySQL

Description

Style orienté objet (propriétés) :

mysqli_stmt
string $sqlstate;

Style procédural :

string mysqli_stmt_sqlstate ( mysqli_stmt $stmt )

Retourne une chaîne contenant le code d'erreur SQLSTATE de la commande la plus récente qui a été préparée. Le code d'erreur est constitué de 5 caractères '00000'. Les valeurs des codes d'erreurs sont spécifiées par les normes ANSI SQL et ODBC. Pour la liste complète des valeurs, voyez le fichier » http://dev.mysql.com/doc/mysql/en/error-handling.html.

Liste de paramètres

stmt

Style procédural uniquement : Un identifiant de requête retourné par la fonction mysqli_stmt_init().

Valeurs de retour

Retourne la chaîne contenant le code d'erreur SQLSTATE. Le code d'erreur est constitué de 5 caractères. '00000' représente l'absence d'erreur.

Notes

Note: Notez que toutes les erreurs MySQL n'ont pas encore de correspondance en SQLSTATE. La valeur HY000 (erreur générale) est utilisée pour les erreurs sans correspondance.

Exemples

Exemple #1 Style orienté objet

  1. <?php
  2. /* Ouvre la connexion */  
  3. $mysqli = new mysqli("localhost", "my_user", "my_password", "world");  
  4.  
  5. /* Vérifie la connexion */  
  6. if (mysqli_connect_errno()) { 
  7.    printf("Échec de la connexion : %s\n", mysqli_connect_error()); 
  8.    exit();  
  9. }  
  10.  
  11. $mysqli->query("CREATE TABLE myCountry LIKE Country");  
  12. $mysqli->query("INSERT INTO myCountry SELECT * FROM Country");  
  13.  
  14.  
  15. $query = "SELECT Name, Code FROM myCountry ORDER BY Name";  
  16. if ($stmt = $mysqli->prepare($query)) { 
  17.  
  18.    /* Effacement de la table */ 
  19.    $mysqli->query("DROP TABLE myCountry"); 
  20.  
  21.    /* Exécution de la requête */ 
  22.    $stmt->execute(); 
  23.  
  24.    printf("Erreur : %s.\n", $stmt->sqlstate); 
  25.  
  26.    /* Fermeture de la requête */ 
  27.    $stmt->close();  
  28. }  
  29.  
  30. /* Fermeture de la connexion */  
  31. $mysqli->close();  
  32. ?> 

Exemple #2 Style procédural

  1. <?php
  2. /* Ouvre la connexion */  
  3. $link = mysqli_connect("localhost", "my_user", "my_password", "world");  
  4.  
  5. /* Vérifie la connexion */  
  6. if (mysqli_connect_errno()) { 
  7.    printf("Échec de la connexion : %s\n", mysqli_connect_error()); 
  8.    exit();  
  9. }  
  10.  
  11. mysqli_query($link, "CREATE TABLE myCountry LIKE Country");  
  12. mysqli_query($link, "INSERT INTO myCountry SELECT * FROM Country");  
  13.  
  14.  
  15. $query = "SELECT Name, Code FROM myCountry ORDER BY Name";  
  16. if ($stmt = mysqli_prepare($link, $query)) { 
  17.  
  18.    /* Effacement de la table */ 
  19.    mysqli_query($link, "DROP TABLE myCountry"); 
  20.  
  21.    /* Exécution de la requête */ 
  22.    mysqli_stmt_execute($stmt); 
  23.  
  24.    printf("Erreur : %s.\n", mysqli_stmt_sqlstate($stmt)); 
  25.  
  26.    /* Fermeture de la requête */ 
  27.    mysqli_stmt_close($stmt);  
  28. }  
  29.  
  30. /* Fermeture de la connexion */  
  31. mysqli_close($link);  
  32. ?> 

L'exemple ci-dessus va afficher :

Erreur : 42S02.

Remonter Remonter
L'éditeur javascript - CSS - Gentoo - Tutoriaux PHP - Tutoriels PHP - Bretagne - php - Moto - Kit graphique