(PHP 5, PHP 7, PHP 8)
mysqli::$sqlstate -- mysqli_sqlstate — Retourne l'erreur SQLSTATE de la dernière opération MySQL
Style orienté objet
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.
mysql
Seulement en style procédural : Un objet mysqli retourné par la fonction mysqli_connect() ou 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 Exemple avec $mysqli->sqlstate
Style orienté objet
<?php
mysqli_report(MYSQLI_REPORT_ERROR | MYSQLI_REPORT_STRICT);
$mysqli = new mysqli("localhost", "my_user", "my_password", "world");
try {
$mysqli->query("CREATE TABLE City (ID INT, Name VARCHAR(30))");
} catch (mysqli_sql_exception) {
printf("Erreur - SQLSTATE %s.\n", $mysqli->sqlstate);
}
Style procédural
<?php
mysqli_report(MYSQLI_REPORT_ERROR | MYSQLI_REPORT_STRICT);
$link = mysqli_connect("localhost", "my_user", "my_password", "world");
try {
mysqli_query($link, "CREATE TABLE City (ID INT, Name VARCHAR(30))");
} catch (mysqli_sql_exception) {
printf("Erreur - SQLSTATE %s.\n", mysqli_sqlstate($link));
}
Les exemples ci-dessus vont afficher :
Erreur - SQLSTATE 42S01.