Tous les articles par Mr COBOL

CODE RETOUR -623

CLUSTER IS NOT VALID FOR table-name

Explication
Une table ne peut avoir qu’un seul index de cluster et l’organisation de hachage ne peut pas être utilisée lorsqu’une table a un index de cluster.

table-name
Le nom de la table.

L’option CLUSTER ne peut pas être spécifiée pour l’une des raisons suivantes :

  • Une instruction CREATE INDEX a tenté de créer un index de cluster sur la table spécifiée, mais un index de cluster existe déjà sur la table.
  • Une instruction ALTER INDEX a spécifié la clause CLUSTER, mais il existe déjà un index de clustering défini pour la table.

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

Réponse du programmeur
Vérifiez pour déterminer l’identité et la validité de l’index de cluster existant ou l’utilisation de l’organisation de hachage avec la table d’objets. Vous pouvez également envisager de créer l’index sans l’attribut CLUSTER.

SQLSTATE
55012

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