Archives de catégorie : SQLCODE

CODE RETOUR -122

A SELECT STATEMENT WITH NO GROUP BY CLAUSE CONTAINS A COLUMN NAME AND A COLUMN FUNCTION IN THE SELECT CLAUSE OR A COLUMN NAME IS CONTAINED IN THE SELECT CLAUSE BUT NOT IN THE GROUP BY CLAUSE

Explication :

L’ordre SELECT contient une des trois erreurs suivantes :

  • L’ordre contient un nom de colonne et une fonction de colonne sur la clause SELECT, sans clause GROUP BY.
  • Un nom de colonne figure sur la clause SELECT (éventuellement dans une fonction scalaire) mai pas dans la clause GROUP BY.
  • Une colonne référencée dans une clause GROUP BY est une colonne de vue dérivée d’une constante, d’une expression, ou d’une fonction.

Action système :

L’ordre ne peut être exécuté.

Réponse programmeur :

Corriger la syntaxe de l’ordre SQL en respectant les contraintes d’utilisation de la clause GROUP BY.

CODE RETOUR -121

THE COLUMN nom-colonne IS IDENTIFIED MORE THAN ONCE IN THE INSERT OR UPDATE STATEMENT

Explication :

Une même colonne ‘nom-colonne’ est précisée plus d’une fois, soit dans la liste des colonne: d’un ordre INSERT, soit dans la clause SET d’un ordre UPDATE.

Action système :

L’ordre ne peut être exécuté. Aucune donnée n’est mise à Jour.

Réponse programmeur :

Corriger la syntaxe de l’ordre SQL de telle manière que chaque nom de colonne apparaisse une seule fois.

CODE RETOUR -120

A WHERE CLAUSE OR SET CLAUSE INCLUDES A COLUMN FUNCTION OR A WHERE CLAUSE REFERENCES A COLUMN nom-colonne WICH IS DERIVED FROM A COLUMN FUNCTION OR EXPRESSION IN A VIEW DEFINITION

Explication :

Une clause WHERE ou SET contient une fonction de colonne, ou une clause WHERE référence une colonne qui est dérivée d’une fonction de colonne ou d’une expression dans la définition d’une vue. Une fonction de colonne est autorisée dans une clause WHERE uniquement si elle apparaît dans une sous- requête ou dans une clause HAVING

Action système :

L’ordre ne peut être exécuté.

Note :

L’information ‘nom-colonne’ peut ne pas être retournée en SQLCA en fonction de la nature de l’erreur.

Réponse programmeur :

Cette codification n’est pas supportée par DB2. Corriger l’ordre SQL en tenant compte des restrictions applicables aux clauses WHERE et SET.

CODE RETOUR -119

A COLUMN IDENTIFIED IN A HAVING CLAUSE IS NOT INCLUDED IN THE GROUP BY CLAUSE

Explication :

Une colonne identifiée dans une clause HAVING (éventuellement dans une fonction scalaire) n’apparaît pas dans la dause GROUP BY. Les colonnes spécifiées dans une clause HAVING doivent apparaître dans des fonctions de colonne ou être précisées dans la clause GROUP BY.

Action système :

L’ordre ne peut être exécuté.

Réponse du programmeur:

Cette codification n’est pas supportée par DB2. Corriger l’ordre SQL en respectant les règles de codification des clauses HAVING et GROUP BY.

CODE RETOUR -118

THE OBJECT TABLE OR VIEW OF THE INSERT, DELETE, OR UPDATE STATEMENT IS ALSO IDENTIFIED IN A FROM CLAUSE

Explication :

La table ou la vue spécifiée comme objet de mise à jour sur un ordre INSERT, DELETE, ou UPDATE, apparaît aussi dans la clause FROM d’une sous-requête imbriquée. La table ou la vue ne peut pas être utilisée pour fournir des valeurs de mise à jour, ou pour qualifier des lignes à insérer, à modifier, ou à détruire.

Action système :

L’ordre ne peut être exécuté. Aucune donnée n’est insérée, modifiée, ou supprimée.

Réponse programmeur :

Cette codification n’est pas supportée par DB2. Méthode : utiliser une copie temporaire de la table ou de la vue et référencer cette copie dans la sous-requête.

CODE RETOUR -117

THE NUMBER OF INSERT VALUES IS NOT THE SAME AS THE NUMBER OF OBJECT COLUMNS

Explication :

Le nombre de valeurs précisées sur la liste d’un ordre INSERT est différent du nombre de colonnes à mettre à jour.

Action système :

L’ordre ne peut être exécuté. Aucune valeur n’est insérée dans la table.

Réponse programmeur :

Corriger l’ordre SQL en précisant une valeur pour chaque colonne de mise à jour supportée par DB2. Corriger l’ordre SQL en respectant les règles de codification des clauses HAVING et GROUP BY.

CODE RETOUR -115

A PREDICATE IS INVALID BECAUSE THE COMPARISON OPERATOR opérateur IS FOLLOWED BY A PARENTHESIZED LIST OR BY ANY OR ALL WITHOUT A SUBQUERY

Explication :

Un opérateur simple de comparaison comme ‘>’ ne doit pas être suivi d’une liste de valeurs. Les opérateurs ANY et ALL doivent être suivis par une sous-requête, et non pas par une expression ou une liste de valeurs.

Action système :

L’ordre ne peut être exécuté.

Réponse du programmeur:

Corriger l’ordre SQL

CODE RETOUR -113

INVALID CHARACTER FOUND IN NAME: nom

Explication :

Le ‘nom’ spécifié comporte un caractère interdit dans les noms DB2. Les identificateurs délimiteurs courts ne peuvent pas contenir de caractère spécial. Les noms contiennent exclusivement des caractères alphabétiques, numériques, ou nationaux (#. $, @), à moins que l’option KATAKANA, ou les caractères d’échappement soient utilisés. Le premier caractère est obligatoirement alphabétique ou national.

Action système :

L’ordre ne peut être exécuté.

Réponse programmeur :

Corriger le nom. Consulter la documentation ” SQL Référence ” pour les conventions de codification des noms.

CODE RETOUR -112

THE OPERAND OF A COLUMN FUNCTION IS ANOTHER COLUMN FUNCTION OR DISTINCT FOLLOWED BY AN EXPRESSION

Explication :

L’opérande d’une fonction de colonne est une autre fonction de colonne, ou le mot clé DISTINCT suivi par une expression. Les opérandes d’une fonction de colonne autorisés sont : les expressions ne comportant pas de fonction, ou DISTINCT suivi par une référence de colonne (pas d’expression).

Action système :

L’ordre ne peut être exécuté.

Réponse programmeur :

Corriger la spécification de la fonction de colonne.

CODE RETOUR -111

A COLUMN FUNCTION DOES NOT INCLUDE A COLUMN NAME

Explication :

La spécification d’une fonction de colonne (AVG. MIN, MAX, ou SUM) est invalide car ces fonctions doivent comporter un nom de colonne comme opérande. Si le nom de colonne provient d’une vue, la colonne ne doit pas être dérivée d’une constante, d’une expression ou d’une fonction.

Action système :

L’ordre ne peut être exécuté.

Réponse programmeur :

Un nom de colonne doit être spécifié comme opérande de la fonction de colonne.