(PHP 5)
mysqli->sqlstate -- mysqli_sqlstate — Retourne l'erreur SQLSTATE de la dernière opération MySQL
Style orienté objet (propriété) :
Style procédural :
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 : » http://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.
Style procédural uniquement : Un identifiant de lien retourné par la fonction mysqli_connect() ou par la fonction mysqli_init()
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.
Exemple #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();
?>
Exemple #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.