maxdb_stmt_sqlstate
(PECL maxdb >= 1.0)
maxdb_stmt_sqlstate — Retourne une erreur SQLSTATE depuis la requête précédente
Description
$stmt
) : stringRetourne une chaîne contenant un code erreur SQLSTATE depuis la fonction de requête préparée la plus récente qu'elle ait réussie ou échouée. Le code erreur est composé de cinq caractères. '00000' signifie aucune erreur. La valeur est spécifiée par ANSI SQL et ODBC.
Note:
Notez que toutes les erreurs MaxDB ne sont pas encore liées à SQLSTATE. La valeur HY000 (erreur général) est utilisée pour les erreurs non liées.
Valeurs de retour
Retourne une chaîne contenant le code erreur SQLSTATE pour la dernière erreur. Le code erreur est composé de cinq caractères. '00000' signifie aucune erreur.
Exemples
Exemple #1 Style orienté objet
<?php
/* Ouvre une connexion */
$maxdb = new maxdb("localhost", "MONA", "RED", "DEMODB");
/* Vérification de la connexion */
if (maxdb_connect_errno()) {
printf("Echec de la connexion : %s\n", maxdb_connect_error());
exit();
}
$maxdb->query("CREATE TABLE temp.mycity LIKE hotel.city");
$maxdb->query("INSERT INTO temp.mycity SELECT * FROM hotel.city");
$query = "SELECT name, zip FROM temp.mycity ORDER BY name";
if ($stmt = $maxdb->prepare($query)) {
/* Efface la table */
$maxdb->query("DROP TABLE temp.mycity");
/* Exécute une requête */
$stmt->execute();
printf("Erreur : %s.\n", $stmt->sqlstate);
/* Ferme la requête */
$stmt->close();
}
/* Fermeture de la connexion */
$maxdb->close();
?>
Exemple #2 Style procédural
<?php
/* Ouvre une connexion */
$link = maxdb_connect("localhost", "MONA", "RED", "DEMODB");
/* Vérification de la connexion */
if (maxdb_connect_errno()) {
printf("Echec de la connexion : %s\n", maxdb_connect_error());
exit();
}
maxdb_query($link, "CREATE TABLE temp.mycity LIKE hotel.city");
maxdb_query($link, "INSERT INTO temp.mycity SELECT * FROM hotel.city");
$query = "SELECT name, zip FROM temp.mycity ORDER BY name";
if ($stmt = maxdb_prepare($link, $query)) {
/* Efface la table */
maxdb_query($link, "DROP TABLE temp.mycity");
/* Exécute une requête */
maxdb_stmt_execute($stmt);
printf("Erreur : %s.\n", maxdb_stmt_sqlstate($stmt));
/* Ferme la requête */
maxdb_stmt_close($stmt);
}
/* Fermeture de la connexion */
maxdb_close($link);
?>
L'exemple ci-dessus va afficher quelque chose de similaire à :
Warning: maxdb_stmt_execute(): -4004 POS(23) Unknown table name:MYCITY [42000] <...> Erreur : 42000.
Voir aussi
- maxdb_stmt_errno() - Retourne le code erreur pour le dernier appel à une fonction de requête
- maxdb_stmt_error() - Retourne une description de la dernière erreur
Document créé le 30/01/2003, dernière modification le 26/10/2018
Source du document imprimé : https://www.gaudry.be/php-rf-maxdb-stmt-sqlstate.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.