Forum und email

mysqli_sqlstate

mysqli->sqlstate

(PHP 5)

mysqli->sqlstate — Retourne l'erreur SQLSTATE de la dernière opération MySQL

Description

Style procédural

string mysqli_sqlstate ( mysqli $link )

Style orienté objet (méthode)

mysqli
string$sqlstate;

Retourne une chaîne contenant le code d'erreur SQLSTATE de la dernière erreur. Le code d'erreur '00000' signifie : "pas d'erreur". Les valeurs sont spécifiées par les normes ANSI SQL et ODBC. Pour une liste des valeurs possibles, voyez : » https://dev.mysql.com/doc/mysql/en/error-handling.html.

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

Liste de paramètres

link

Style procédural uniquement : Un identifiant de lien retourné par la fonction mysqli_connect() ou par la fonction mysqli_init()

Valeurs de retour

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

Exemples

Example#1 Style orienté objet

<?php
$mysqli 
= new mysqli("localhost""my_user""my_password""world");

/* Vérification de la connexion */
if (mysqli_connect_errno()) {
    
printf("Échec de la connexion : %s\n"mysqli_connect_error());
    exit();
}

/* La table Ville existe déjà, nous devrions avoir une erreur */
if (!$mysqli->query("CREATE TABLE City (ID INT, Name VARCHAR(30))")) {
    
printf("Erreur - SQLSTATE %s.\n"$mysqli->sqlstate);
}

$mysqli->close();
?>

Example#2 Style procédural

<?php
$link 
mysqli_connect("localhost""my_user""my_password""world");

/* Vérification de la connexion */
if (mysqli_connect_errno()) {
    
printf("Échec de la connexion : %s\n"mysqli_connect_error());
    exit();
}

/* La table Ville existe déjà, nous devrions avoir une erreur */
if (!mysqli_query($link"CREATE TABLE City (ID INT, Name VARCHAR(30))")) {
    
printf("Erreur - SQLSTATE %s.\n"mysqli_sqlstate($link));
}

mysqli_close($link);
?>

L'exemple ci-dessus va afficher :

Erreur - SQLSTATE 42S01.