CODE RETOUR -189

CCSID ccsid IS INVALID

Explication :
Pour déterminer le sous-type d’une variable hôte d’entrée ou d’une colonne de résultat, la table du catalogue SYSSTRINGS a été accédée avec le CCSID spécifié et l’une des conditions d’erreur suivantes s’est produite :

  • Le CCSID n’est pas une valeur d’INCCSID ou d’OUTCCSID.
  • La colonne TRANSTYPE classe le CCSID comme GRAPHIC plutôt que CHARACTER.
  • Un CCSID graphique n’a pas été spécifié sur votre système.
  • Le CCSID est en dehors de la plage de valeurs acceptable. Le CCSID doit être compris entre 1 et 65533, inclus, ou la valeur 65535.
  • Un CCSID DBCS a été spécifié lors du transtypage vers CHAR, VARCHAR ou CLOB.
  • Un SBCS ou un CCSID mixte, ou 65535 a été spécifié lors du transtypage vers un type de données graphique.
  • Le CCSID 65535, qui n’est valide que pour les données avec l’attribut FOR BIT DATA, a été spécifié lors du transtypage vers un CLOB.

Cette erreur peut se produire lorsque SYSSTRINGS est accédé avec une paire de CCSID pour déterminer si une traduction est définie pour la paire. Dans ce cas, l’erreur est l’incohérence entre le type de données d’une chaîne et la classification TRANSTYPE de son CCSID (l’un est GRAPHIC et l’autre est CHARACTER).

Cette erreur peut également se produire lorsqu’un CCSID spécifié dans DECP n’existe pas en tant que valeur dans les colonnes INCCSID ou OUTCCSID de SYSSTRINGS.

Une autre raison pour laquelle cette erreur peut se produire est que vous utilisez peut-être l’une des fonctions graphiques intégrées, mais qu’aucun CCSID graphique n’a été spécifié lors de l’installation du système.

Action du système :
L’instruction ne peut pas être liée ou exécutée.

Réponse du programmeur :
Assurez-vous que le CCSID est valide et cohérent avec le type de données de la chaîne. Si un CCSID valide n’est pas répertorié dans une ligne intégrée de SYSSTRINGS, il peut être défini en insérant une ligne fournie par l’utilisateur. Si un CCSID valide est mal classé dans une ligne fournie par l’utilisateur, cette ligne peut être mise à jour pour corriger l’erreur.

Si aucun CCSID graphique n’a été spécifié lors de l’installation du système, mettez à jour votre DECP pour inclure un CCSID graphique et recyclez votre Db2.

ETATSQL :
22522