CODE RETOUR -951

OBJECT object-name OBJECT TYPE object-type IS IN USE AND CANNOT BE THE TARGET OF THE SPECIFIED ALTER STATEMENT

Explication :
Les options de la routine SQL ne peuvent pas être modifiées si la version de la routine est actuellement active sous le même thread qui a émis l’instruction ALTER et qu’une ou plusieurs des options en cours de modification entraînent la reliaison ou la régénération du package pour le Routine SQL.

object-name
Le nom de l’objet.

object-type
Le type d’objet.

Si l’instruction défaillante était ALTER PROCEDURE ACTIVATE VERSION ou ALTER FUNCTION ACTIVATE VERSION, la version active d’une routine SQL actuellement active sous l’appel de routine imbriquée par le même thread ne peut pas être modifiée.

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

Réponse du programmeur :
Passez en revue les informations sur les options de modification et les modifications qui entraînent la reliaison ou la régénération des packages associés.

Vérifiez que la logique d’appel de routines imbriquées impliquant des routines SQL et les instructions ALTER fonctionnent comme prévu. Portez une attention particulière aux instructions CALL :HV avec le réglage du registre spécial CURRENT ROUTINE VERSION, car la combinaison de ces instructions peut produire des flux logiques indésirables. S’il est nécessaire d’utiliser plusieurs versions de la même routine SQL dans la chaîne récursive imbriquée, envisagez d’utiliser CALL :HV et le registre spécial CURRENT ROUTINE VERSION pour contrôler la version utilisée, au lieu de la clause ALTER ACTIVATE VERSION.

SQLSTATE :
55007