CODE RETOUR -469

SQL CALL STATEMENT MUST SPECIFY AN OUTPUT VARIABLE FOR PARAMETER number

Explication
DB2 a reçu une instruction SQL CALL pour une procédure stockée. Db2 a trouvé la ligne dans la table de catalogue SYSIBM.SYSROUTINES associée au nom de procédure demandé. Cependant, le numéro number de paramètre a été identifié dans la table SYSIBM.SYSPARMS en tant que paramètre OUT ou INOUT. Une variable pouvant être mise à jour doit être fournie dans l’instruction SQL CALL pour un paramètre défini comme OUT ou INOUT.

Une constante ou une expression est un exemple d’argument d’entrée non valide pour une fonction ou un paramètre OUT ou INOUT pour une procédure. Par exemple, supposons qu’une procédure nommée MY_PROC soit définie avec un paramètre OUT. L’appel suivant de la procédure n’est pas valide car l’argument passé au paramètre OUT est une expression constante, à laquelle des valeurs ne peuvent pas être affectées.

CALL MY_PROC(1+2);

  number
Le numéro de paramètre de la zone ORDINAL dans SYSIBM.SYSPARMS.

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

Réponse du programmeur
Si l’instruction SQL CALL est codée de manière incorrecte, modifiez l’application SQL pour fournir une variable de sortie sur l’instruction SQL CALL.

Si la table SYSIBM.SYSPARMS contient des informations incorrectes, les instructions DROP PROCEDURE et CREATE PROCEDURE doivent être utilisées pour remplacer la définition de catalogue de la procédure stockée.

SQLSTATE
42886