Aller au contenu

Service SQL IBM i (AS/400) · Table

QSYS2.SQLSTATE_INFO

Signification des codes SQLSTATE

Table de référence qui décrit chaque valeur de SQLSTATE avec son code SQLCODE associé et un texte explicatif.

À quoi ça sert

SQLSTATE_INFO relie une valeur de SQLSTATE à ses SQLCODE_VALUE possibles et à un texte d'explication (SQLSTATE_DETAIL).

Quand une application remonte seulement un SQLSTATE, comme 42704 (nom non défini), on interroge cette table pour obtenir la signification et les codes SQL correspondants, sans chercher dans la documentation.

On peut aussi la joindre à SQL_ERROR_LOG pour enrichir un rapport d'erreurs avec le libellé de chaque SQLSTATE.

Résultat réel sur un IBM i 7.5

Ce que nous avons exécuté :

SELECT * FROM QSYS2.SQLSTATE_INFO WHERE SQLSTATE_VALUE = '42704'

Ce que l'IBM i a renvoyé le 01/10/2026 (1 ligne au plus) :

SQLSTATE_VALUE Valeur du SQLSTATE SQLCODE_VALUE Valeur du SQLCODE SQLSTATE_DETAIL Détail du SQLSTATE
42704 -204 An undefined object or constraint name was detected.

Données anonymisées : les noms de système, de profils, de bibliothèques, de postes et les adresses IP ont été remplacés. Les objets du schéma JOBISQL sont des objets de démonstration créés pour ce site.

L'exemple d'IBM

Obtenir les informations sur le SQLSTATE 42704.

-- Description: Return information about SQLSTATE 42704. 
   SELECT * FROM QSYS2.SQLSTATE_INFO WHERE SQLSTATE_VALUE = '42704';

Colonnes renvoyées (3)

Afficher les 3 colonnes
ColonneTypeSignification
SQLSTATE_VALUE CHAR(5) Valeur du SQLSTATE
SQLCODE_VALUE INTEGER Valeur du SQLCODE
SQLSTATE_DETAIL VARCHAR(1000) Détail du SQLSTATE