Tous les articles par Mr COBOL

CODE RETOUR -685

INVALID FIELD TYPE, column-name

Explication :
La description de champ renvoyée par la procédure de champ n’est pas valide. Le code de type de données indique une longue chaîne ou a une valeur non valide.

Action du système :
La déclaration ne peut pas être traitée.

Réponse du programmeur :
Corrigez la procédure de champ afin qu’elle renvoie un code de type de données valide.

SQLSTATE :
58002

CODE RETOUR -679

THE OBJECT name CANNOT BE CREATED BECAUSE A DROP IS PENDING ON THE OBJECT

Explication :
Le programme d’application a exécuté un DROP pour l’objet spécifié, puis a essayé de recréer un objet avec le même nom (et du même type) avant que le DROP ne soit terminé.

Si l’objet est un index, cette erreur est renvoyée si l’index à créer utilise le même nom d’espace d’index que l’index qui a été supprimé sans validation.

Action du système :
La déclaration ne peut pas être traitée. L’objet spécifié n’a pas été créé.

Réponse du programmeur :
La logique du programme d’application doit être modifiée pour émettre un COMMIT (ou l’équivalent IMS ou CICS®) entre les instructions DROP et CREATE.

SQLSTATE :
57006

CODE RETOUR -680

TOO MANY COLUMNS SPECIFIED FOR A TABLE, VIEW OR TABLE FUNCTION

Explication :
Le nombre maximal de colonnes autorisées par table, vue ou fonction de table est de 750. L’instruction a tenté d’effectuer l’une des actions suivantes :

  • CREATE ou ALTER une table pour contenir plus de 750 colonnes
  • CREER une vue avec plus de 750 colonnes
  • CREATE une fonction de table avec plus de 750 colonnes dans la clause RETURNS TABLE

Action du système :
La déclaration ne peut pas être traitée.

Réponse du programmeur :
Modifiez l’instruction CREATE pour ne pas inclure plus de 750 colonnes ou n’essayez pas de modifier une table existante pour qu’elle contienne plus de 750 colonnes.

SQLSTATE :
54011

CODE RETOUR -681

COLUMN column-name IN VIOLATION OF INSTALLATION DEFINED FIELD PROCEDURE. RT: return-code, RS: reason-code, MSG: message-token

Explication :
Une procédure de champ d’installation a renvoyé une erreur pour ‘column-name‘. Le ‘reason-code‘ et le ‘message-token‘ sont définis par la procédure de champ. Ils peuvent donner des informations supplémentaires pour aider à déterminer la cause du problème.

Code retour

4Valeur non valide lors de l’encodage ou du décodage ou description de colonne non valide lors de la définition
8Valeur de paramètre invalide
12Erreur de procédure de champ sur n’importe quelle fonction

Utilisez le ‘reason-code‘ et ‘message-token‘ pour plus d’informations.

Action du système :
La déclaration ne peut pas être traitée.

Réponse du programmeur :
S’il ne s’agit pas d’une erreur de procédure sur le terrain, déterminez les exigences imposées par la procédure sur le terrain. S’il s’agit d’une erreur de procédure de champ, examinez la procédure de champ.

SQLSTATE :
23507

CODE RETOUR -672

OPERATION DROP NOT ALLOWED ON TABLE table_name

Explication :
L’opération DROP a échoué pour l’une des raisons suivantes :
– La table en cours de suppression possède l’attribut RESTRICT ON DROP.
– L’espace table ou la base de données en cours de suppression contient la table spécifiée, qui possède l’attribut RESTRICT ON DROP.

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

Réponse du programmeur :
Avant de supprimer la table, modifiez la table en spécifiant DROP RESTRICT ON DROP.

Pour DROP TABLESPACE ou DROP DATABASE, assurez-vous qu’il n’y a pas d’autres tables dans l’espace table ou la base de données avec l’attribut RESTRICT ON DROP. L’instruction SELECT suivante peut identifier les tables :

SELECT CREATOR, NAME
FROM SYSIBM.SYSTABLES
WHERE TYPE = 'T'
AND CLUSTERTYPE = 'Y'
AND DBNAME = 'database_name'
AND TSNAME = 'tablespace_name';


SQLSTATE :
55035

CODE RETOUR -676

THE PHYSICAL CHARACTERISTICS OF THE INDEX ARE INCOMPATIBLE WITH RESPECT TO THE SPECIFIED STATEMENT. THE STATEMENT HAS FAILED. REASON reason-code

Explication :
Un code anomalie est émis lors du traitement d’une instruction CREATE INDEX ou ALTER INDEX. Lorsque l’instruction échoue, la raison de l’échec est indiquée par la valeur de code de raison suivante :

0001Vous avez spécifié un pool de mémoire tampon avec une taille de page autre que 4 Kb dans l’instruction CREATE ou ALTER INDEX.
0002Une instruction ALTER INDEX ou CREATE INDEX entraîne une combinaison non valide d’une taille de page de 4 Kb et de COMPRESS YES. Ce code de raison sera émis pour les raisons suivantes :
– Si vous avez tenté de CREATE ou ALTER un index, vous n’avez pas spécifié de pool de mémoire tampon dont la taille de page est prise en charge pour la compression d’index. Vous ne pouvez choisir qu’un pool de mémoire tampon avec une taille de page de 8 Kb, 16 Kb ou 32 Kb pour un index compressé.
– Si vous avez essayé d’ALTER un index en utilisant ALTER INDEX avec la clause COMPRESS YES, l’index existant n’est pas défini avec un pool de mémoire tampon qui a une taille de page de 8 Kb, 16 Kb ou 32 Kb, et par conséquent, l’index ne peut pas être compressé.
0003L’instruction ALTER INDEX a généré un index dont la taille de page sur le disque est incompatible avec le CISIZE de l’ensemble de données gérées non-Db2 sous-jacent de l’index. Ce code de raison sera émis pour les raisons suivantes :
Si l’index n’est pas compressé, une taille de page de 4 Kb doit résider dans un ensemble de données qui a un CISIZE de 4 Kb. Une taille de page supérieure à 4 Kb doit avoir un CISIZE qui est de 4 Kb ou égal à la taille de la page.
Si l’index est compressé, les pages d’index sur le disque font toujours 4 Kb. Le CISIZE pour l’ensemble de données doit également être de 4 Kb.


Action du système :
La déclaration ne peut pas être traitée.

Réponse du programmeur :
En fonction de la valeur du code de motif, effectuez l’action suivante :

0001Remplacez la spécification du pool de mémoire tampon par le nom d’un pool de mémoire tampon avec une taille de page de 4 Kb.
0002Modifiez l’instruction afin qu’elle n’entraîne pas un index compressé avec une taille de page de 4 Kb.
0003ALTER the STOGROUP pour utiliser un ensemble de données gérées Db2 ou modifier le CISIZE de l’ensemble de données géré par l’utilisateur pour qu’il soit compatible avec les options d’index spécifiées. Si l’index est compressé, le CISIZE doit être de 4 Kb. Sinon, le CISIZE doit correspondre à la taille de la page ou être de 4 Kb.

SQLSTATE :
53041

CODE RETOUR -677

INSUFFICIENT VIRTUAL STORAGE FOR BUFFERPOOL EXPANSION

Explication :
Une tentative d’ouverture (création) ou d’extension d’un pool de mémoire tampon a échoué car la mémoire virtuelle disponible était insuffisante.

Cette erreur peut se produire dans l’une des deux circonstances suivantes :

  • Tentative de création d’un pool de mémoire tampon lors de l’ouverture d’un espace table ou d’un index (espace), ou
  • Tentative d’extension d’un pool de mémoire tampon de sa taille actuelle à sa taille maximale.

Action du système :
La déclaration ne peut pas être traitée.

Réponse du programmeur :
Si cette erreur se produit lors de l’exécution interactive d’une instruction SQL ou de l’exécution d’un programme d’application, l’administration de l’installation doit en être informée.

Action d’installation : Il peut être nécessaire de réexaminer la stratégie de stockage du pool de mémoire tampon.

L’un des messages suivants a également été envoyé à la console MVS™ : DSNB601I, DSNB603I ou DSNB605I.

SQLSTATE :
57011

CODE RETOUR -678

THE CONSTANT constant SPECIFIED FOR THE INDEX LIMIT KEY MUST CONFORM TO THE DATA TYPE data-type OF THE CORRESPONDING COLUMN column-name

Explication :
La constante de valeur de clé de limite d’index a été spécifiée de manière incorrecte dans l’instruction CREATE INDEX ou ALTER INDEX.

Les spécifications de valeur de clé de limite doivent être conformes au type de données de la colonne de clé d’index correspondante. Dans ce cas, la constante doit être du type de données data-type pour être conforme au type de données de la colonne column-name.

Action du système :
La déclaration ne peut pas être traitée. L’index n’a pas été créé.

Réponse du programmeur :
Corrigez l’instruction afin que chaque constante de valeur de clé de limite soit exactement du même type de données que celle de la colonne de clé d’index correspondante.

SQLSTATE :
53045

CODE RETOUR -669

THE OBJECT CANNOT BE EXPLICITLY DROPPED. REASON reason-code

Explication :
L’instruction DROP a échoué.

reason-code
La raison du message ou du code SQL, indiquée par l’une des valeurs suivantes :

0001L’une des instructions suivantes a tenté de supprimer une table qui réside dans un espace table partitionné explicitement défini (non UTS) :
– L’instruction DROP TABLE
– Une instruction DROP qui provoque la suppression d’une table dépendante

SQLCODE -669 avec le code anomalie 0001 peut être émis lorsque l’une des instructions répertoriées ci-dessus tente de supprimer une table qui réside dans un espace table partitionné explicitement défini ou un espace table partitionné par croissance.
0002L’instruction DROP INDEX a tenté de supprimer un index dont Db2 a besoin pour conserver les conditions suivantes :
– La contrainte de clé primaire sur une table
– Une contrainte de clé unique sur une table
– Une contrainte référentielle sur une table
– L’unicité d’une colonne ROWID
– Une colonne XML définie sur une table

Un index requis par le système ne peut pas être supprimé à l’aide de l’instruction DROP INDEX.
0003L’instruction DROP INDEX a tenté de supprimer un index créé implicitement pour une table définie avec une organisation HASH.
0004L’instruction DROP TABLE a tenté de supprimer une table implicitement créée pour une colonne XML.
0005L’instruction DROP TABLESPACE a tenté de supprimer un espace table implicitement créé pour une table contenant une colonne XML.
0006L’instruction DROP a tenté de supprimer une table auxiliaire, un index auxiliaire ou un espace table auxiliaire impliqué dans le clonage.
0007L’instruction DROP TABLESPACE ou l’instruction DROP DATABASE a tenté de supprimer un espace table ou une base de données contenant une table d’accélérateur uniquement.
0008L’instruction DROP INDEX a tenté de supprimer un index utilisé pour la définition d’une clé étrangère pour une contrainte référentielle temporelle.

Action du système :
La déclaration ne peut pas être traitée. L’objet n’est pas supprimé.

Réponse du programmeur :
Prenez l’action corrective appropriée en fonction de la valeur du code de raison :

0001La table d’un espace table partitionné (non UTS) ne peut être supprimée implicitement que lorsque l’espace table lui-même est supprimé.
0002Si vous ne souhaitez pas conserver la clé primaire, la clé unique ou la contrainte référentielle, utilisez la clause DROP CONSTRAINT de l’instruction ALTER TABLE pour supprimer la clé primaire ou la contrainte unique. Si l’index a été créé uniquement pour appliquer la clé primaire ou unique, l’index sera supprimé. Si ce n’est pas le cas, l’instruction DROP INDEX pourrait alors être traitée. Un index pour une colonne ROWID ne peut être supprimé qu’en supprimant la table.
0003L’index ne peut être supprimé implicitement que lorsque la table associée qui contient la colonne XML est supprimée. Si l’erreur concerne une table organisée par hachage, l’index de débordement de hachage associé ne peut pas être supprimé. La suppression de l’organisation de hachage supprimera automatiquement l’index de débordement de hachage.
0004La table peut être supprimée implicitement uniquement lorsque la table associée contenant la colonne XML est supprimée.
0005L’espace table peut être supprimé implicitement uniquement lorsque la table associée contenant la colonne XML est supprimée.
0006Une table auxiliaire, un index auxiliaire ou un espace table auxiliaire impliqué dans le clonage ne peut être supprimé implicitement que lorsque la table associée contenant la colonne XML est supprimée.
0007L’espace table ou la base de données ne peut être supprimé explicitement que lorsque la table d’accélérateur uniquement est supprimée.
0008L’index ne peut être supprimé qu’après la suppression de la contrainte référentielle temporelle.

SQLSTATE :
42917

CODE RETOUR -670

THE RECORD LENGTH OF THE TABLE EXCEEDS THE PAGE SIZE LIMIT

Explication :
La longueur de ligne d’une table ne peut pas dépasser la taille de page de l’espace table dans lequel cette table réside (ou doit résider). La taille de page de l’espace table est déterminée par le pool de mémoire tampon utilisé par cet espace table.

Cette erreur peut résulter de l’une des conditions suivantes :

Cast specification
La longueur cible dépasse la limite maximale. La limite est de 32764 pour un résultat de chaîne de caractères de longueur variable.

Création de tableaux
Les conditions suivantes sont possibles pour une instruction CREATE TABLE :

  • Comme défini dans une instruction CREATE TABLE, la longueur de ligne de la table dépasserait la taille de page de l’espace table spécifié (ou par défaut). Pour corriger cette situation, soit :
    – Réduisez la longueur des lignes du tableau en réduisant la longueur d’une ou de plusieurs colonnes.
    – Affectez la table à un espace table qui utilise un pool de mémoire tampon plus grand.
  • La colonne LOB avec la clause INLINE LENGTH a contribué au dépassement de la limite de taille de page.

Modification du tableau
Les conditions suivantes sont possibles pour une instruction ALTER TABLE :

  • L’ajout de la colonne spécifiée entraînerait un dépassement de la longueur de ligne de la table par rapport à la taille de page de l’espace table. Ce tableau ne peut pas être modifié pour ajouter des colonnes.
  • L’instruction a été émise pour modifier la longueur d’une colonne de longueur variable existante et la nouvelle longueur de la colonne modifiée entraînerait un dépassement de la longueur de ligne de la table par rapport à la taille de page de l’espace table.
  • La colonne LOB avec une clause INLINE LENGTH a contribué au dépassement de la limite de taille de page.

    Pour corriger cette situation, réduisez la longueur de la colonne.

Modification de l’espace table
Les conditions suivantes sont possibles pour une instruction ALTER TABLESPACE :

  • Dans le cas d’une instruction ALTER TABLESPACE utilisée pour modifier le pool de mémoire tampon à une taille de page plus petite, la longueur de ligne pour l’une des tables de l’espace table dépasse la nouvelle taille de page plus petite.
  • Dans le cas d’une instruction ALTER TABLESPACE avec une clause MOVE TABLE, l’espace table cible doit être défini avec un pool de mémoire tampon dont la taille de page peut contenir la longueur d’enregistrement de la table qui est déplacée.

Résultat de la jointure
La longueur de la ligne dans le résultat d’une jointure dépasse la limite maximale. La limite est de 65 529 octets. L’enregistrement de tri inclut les colonnes en cours de tri et les colonnes sélectionnées par l’utilisateur. La longueur des colonnes que l’utilisateur sélectionne correspond à la longueur des données de tri.

Trier le résultat
Les conditions suivantes sont possibles pour un résultat de tri :
La longueur de ligne d’un enregistrement de tri volumineux dépasse la limite maximale. La limite est de 65 529 octets. L’enregistrement de tri inclut les colonnes en cours de tri et les colonnes sélectionnées par l’utilisateur. La longueur des colonnes que l’utilisateur sélectionne correspond à la longueur des données de tri.
La longueur de la clé de tri pour un tri dépasse la limite maximale. La limite est de 32 000 octets. La longueur des colonnes triées correspond à la longueur de la clé de tri.

Action du système :
La déclaration ne peut pas être traitée.

Réponse du programmeur :
Corrigez l’erreur en fonction des informations fournies et réémettez l’instruction.

SQLSTATE :
54010