Archives de catégorie : SQLCODE

CODE RETOUR -622

FOR MIXED DATA IS INVALID BECAUSE THE MIXED DATA INSTALL OPTION IS NO

Explication
FOR MIXED DATA est spécifié dans une déclaration de colonne, de variable ou de paramètre SQL, mais l’option d’installation MIXED DATA est définie sur NO. FOR MIXED DATA n’est valide que lorsque l’option d’installation MIXED DATA est définie sur YES.

Action du système
L’instruction ne peut pas être traitée.

Réponse du programmeur
Modifiez l’option d’installation ou la clause FOR. Si l’option d’installation est correctement définie sur NO, les options de clause FOR autorisées sont BIT et SBCS.

SQLSTATE
56031

CODE RETOUR -621

DUPLICATE DBID dbid WAS DETECTED AND PREVIOUSLY ASSIGNED TO database-name

Explication
La base de données actuelle en cours de création a reçu un DBID de ‘dbid ‘, qui est identique au DBID attribué à la base de données ‘database-name‘. Il existe une incohérence entre le catalogue et l’annuaire Db2.

Action du système
L’instruction ne peut pas être traitée. Aucun nouvel objet n’a été créé et l’objet existant n’a été ni altéré ni modifié.

Réponse du programmeur système
Si vous suspectez une erreur dans Db2, vous devrez peut-être signaler le problème. Pour plus d’informations sur l’identification et le signalement du problème, voir Collecte des données de diagnostic.

Réponse du programmeur
Avertissez le programmeur système. L’incohérence doit être corrigée avant que CREATE DATABASE ne réussisse.

SQLSTATE
58001

CODE RETOUR -620

KEYWORD keyword IN stmt-type STATEMENT IS NOT PERMITTED FOR A space-type SPACE IN THE database-type DATABASE

Explication
Le mot clé keyword spécifié dans l’instruction SQL stmt-type indique un attribut qui n’est pas autorisé pour un espace  space-type dans une base de données de type database-type. Par exemple, vous ne pouvez pas définir LOGGED ou NOT LOGGED lorsque vous créez ou modifiez un espace table dans une base de données WORK FILE.

keyword
Spécifie le mot-clé qui n’est pas autorisé.

stmt-type
L’une des valeurs suivantes :

CREATE
CREATE TABLESPACE or CREATE INDEX
ALTER
ALTER TABLESPACE or ALTER INDEX

space-type
L’une des valeurs suivantes :

TABLE
Table space
INDEX
Index space

database-type
L’une des valeurs suivantes : WORK FILE ou TEMP.

Action du système
L’instruction ne peut pas être traitée.

Réponse du programmeur
Corrigez et soumettez à nouveau la déclaration.

SQLSTATE
53001

CODE RETOUR -619

OPERATION DISALLOWED BECAUSE THE DATABASE IS NOT STOPPED

Explication
Les instructions CREATE, ALTER ou DROP pour un espace table, une table ou un index dans la base de données ne peuvent être traitées que si la base de données est arrêtée (à l’aide de la commande STOP).

Action du système
L’instruction ne peut pas être traitée.

Réponse du programmeur
Exécutez la commande -DISPLAY DATABASE pour vérifier que la base de données RTS est arrêtée avant de soumettre à nouveau l’instruction.

SQLSTATE
55011

CODE RETOUR -618

OPERATION operation IS NOT ALLOWED ON SYSTEM DATABASES

Explication
Les bases de données système ne peuvent pas faire l’objet de certains types d’opérations. L’opération operation tentée ne peut pas être effectuée sur les bases de données système. Les raisons possibles sont :

  • Le CCSID ASCII a été spécifié lors de la création d’une base de données système.
  • APPEND a été spécifié lors de la création d’une base de données système.
  • TRANSFER OWNERSHIP a été émis pour transférer la propriété d’une base de données système.

Action du système
L’instruction ne peut pas être traitée. Aucune modification n’a été apportée à la base de données système spécifiée.

Réponse de l’utilisateur
N’essayez pas d’effectuer l’opération demandée sur les bases de données système.

SQLSTATE
42832

CODE RETOUR -616

obj-type1 obj-name1 CANNOT BE DROPPED BECAUSE IT IS REFERENCED BY obj-type2 obj-name2

Explication
Certains types d’objets ne peuvent pas être supprimés s’il existe d’autres objets qui en dépendent. Par exemple, un groupe de stockage ne peut pas être supprimé s’il existe un ou plusieurs espaces table existants qui utilisent ce groupe de stockage.

L’exécution de l’instruction DROP spécifiée supprimerait l’objet obj-name1 de type obj-type1 dont dépend l’objet obj-name2 de type obj-type2 .

Action du système
L’instruction ne peut pas être traitée. L’objet spécifié n’a pas été supprimé.

Réponse du programmeur
Vérifiez que l’objet spécifié dans l’instruction DROP était bien l’objet à supprimer. Si tel est le cas, tous les objets existants qui ont une dépendance sur cet objet doivent d’abord être supprimés.

Un espace table LOB ne peut pas être supprimé lorsqu’une association existe entre lui et un autre espace table. La table de base associée doit être supprimée en premier.

Une table auxiliaire remplie et son index ne peuvent être supprimés qu’en supprimant la table de base associée.

Un package de déclencheur ne peut pas être explicitement supprimé. Il ne peut être supprimé qu’en supprimant le déclencheur associé avec une instruction DROP TRIGGER ou en supprimant la table de déclenchement.

SQLSTATE
42893

CODE RETOUR -615

operation-type IS NOT ALLOWED ON A PACKAGE IN USE

Explication
L’opération ne peut pas être effectuée car le package est utilisé par le même processus d’application ou le package dépend d’un objet qui est la cible d’une instruction DROP.

operation-type
Type d’opération de liaison (BIND, REBIND ou DROP).

Action du système
L’opération BIND, REBIND ou DROP sur le package n’est pas effectuée.

Réponse du programmeur
Effectuez l’une des actions suivantes :

  • Modifiez l’application pour appeler l’opération BIND, REBIND ou DROP lorsque le package n’est pas utilisé par le même processus d’application.
  • Supprimez l’objet lorsque le package n’est pas utilisé.

SQLSTATE
55006

CODE RETOUR -614

THE INDEX CANNOT BE CREATED OR ALTERED, OR THE LENGTH OF A COLUMN CANNOT BE CHANGED BECAUSE THE SUM OF THE INTERNAL LENGTHS OF THE COLUMNS FOR THE INDEX IS GREATER THAN THE ALLOWABLE MAXIMUM

Explication
L’index n’a pas pu être créé ou la longueur d’une colonne ne peut pas être modifiée car la somme des longueurs internes des colonnes clés dépasserait le maximum autorisé. La longueur de clé maximale autorisée est la suivante :

  • Pour les index PADDED, la somme des attributs de longueur des colonnes ne doit pas être supérieure à 2000-n, où n est le nombre de colonnes qui contiennent des valeurs NULL.
  • Pour les index NOT PADDED, la somme des attributs de longueur des colonnes ne doit pas être supérieure à 2000 – n – 2m – 3d, où n est le nombre de colonnes “nullables”, m est le nombre de colonnes de longueur variable et d est le nombre des colonnes DECFLOAT.

Action du système
L’instruction ne peut pas être traitée. L’index spécifié n’a pas été créé ou la longueur de la colonne n’a pas été modifiée.

Réponse du programmeur
La définition de l’index doit être modifiée (éventuellement en éliminant une ou plusieurs colonnes clés) pour réduire la longueur de la clé au maximum autorisé.

SQLSTATE
54008

CODE RETOUR -613

THE PRIMARY KEY OR A HASH KEY OR A UNIQUE CONSTRAINT IS TOO LONG OR HAS TOO MANY COLUMNS AND PERIODS

Explication
Le nombre de colonnes et de périodes définies pour une contrainte PRIMARY KEY ou UNIQUE est trop important. Les deux conditions suivantes doivent être remplies :

  • Le total du nombre de colonnes et de deux fois le nombre de périodes identifiées ne doit pas dépasser 64.
  • La somme des attributs de longueur de colonne des colonnes identifiées et des colonnes de début et de fin de toute période identifiée ne doit pas dépasser la limite autorisée pour le type de contrainte.

Si l’instruction défaillante était une instruction ALTER TABLE qui incluait la clause SET DATA TYPE pour modifier la définition d’une colonne existante, une colonne en cours de modification fait partie d’une contrainte unique ou principale. La nouvelle somme des longueurs des colonnes des clés dépasse 2000-n-2m, où n est le nombre de colonnes “nullables” et m est le nombre de colonnes de longueur variable. Cette somme dépasse actuellement le nombre maximum autorisé.

Si l’instruction défaillante était une instruction ALTER TABLE avec une spécification PARTITIONING KEY, seules 64 colonnes peuvent être spécifiées et les longueurs combinées de toutes les colonnes spécifiées dans la clause PARTITIONING KEY dépassent la longueur maximale de 255-n, où n est le nombre de colonnes pouvant contenir des valeurs nulles.

L’instruction défaillante peut avoir été CREATE TABLE avec une spécification ORGANIZE BY HASH ou ALTER TABLE avec une spécification ADD ORGANIZE BY HASH.

Action du système
L’instruction ne peut pas être traitée.

Réponse du programmeur
Modifiez la définition de la table pour rester dans les limites prescrites.

SQLSTATE
54008

CODE RETOUR -612

identifier IS A DUPLICATE NAME

Explication
Un nom non unique a été spécifié lorsqu’un nom unique est requis. Les noms de colonne et de période doivent être uniques dans un index, une table ou une vue, et dans la clause UPDATE OF d’une définition de déclencheur.

identifier
Le nom non unique.

Les causes possibles de cette erreur incluent :

Instructions CREATE INDEX et ALTER INDEX

  • Le même nom de colonne est spécifié pour deux colonnes ou plus de l’index.

Instructions CREATE TABLE et ALTER TABLE

  • Le même nom de colonne est spécifié pour deux colonnes ou plus de la table.
  • Une contrainte spécifie une colonne XML et la définition de contrainte contient une expression qui appelle la fonction XMLQUERY ou utilise le prédicat XMLEXISTS.
  • Le même nom de période est spécifié pour deux colonnes ou plus de la table.
  • La même période est spécifiée plusieurs fois dans la contrainte.
  • Une période et une colonne sont définis avec le même nom.
  • Pour une instruction CREATE TABLE, une liste de colonnes d’une clause PRIMARY KEY, FOREIGN KEY ou UNIQUE contient au moins deux occurrences du même nom de colonne.
  • Une colonne est spécifiée plusieurs fois dans une instruction ALTER TABLE. À une seule exception près, une colonne ne peut pas être spécifiée dans plusieurs clauses d’une instruction ALTER TABLE. L’exception est lorsque les deux clauses sont ALTER COLUMN et ADD CHECK CONSTRAINT.

Instructions CREATE VIEW

  • Le même nom de colonne est spécifié pour deux colonnes ou plus de la vue

Instructions CREATE TRIGGER

  • Pour une instruction CREATE TRIGGER, la clause UPDATE OF spécifie plusieurs fois le même nom de colonne.

Fonction XMLQUERY ou prédicat XMLEXISTS

  • La clause PASSING d’une fonction XMLQUERY ou d’un prédicat XMLEXISTS contient deux arguments portant le même nom.
  • Une liste d’arguments XMLQUERY ou XMLEXISTS contient deux arguments portant le même nom.

Instructions de modification des données SQL

  • L’instruction de modification des données SQL utilise une colonne d’inclusion et le nom de colonne spécifié est le même qu’un autre nom de colonne de la table ou vue cible, ou d’une autre colonne d’inclusion.

Action du système
L’instruction ne peut pas être traitée.

Réponse du programmeur
Corrigez la syntaxe de l’instruction et relancez l’instruction.

SQLSTATE
42711