FirebirdSQL logo
 PROCEDUREPACKAGE 

Déclaration des variables locales, des curseurs et des sous-routines

La section optionnelle <déclarations> décrit les variables locales des fonctions, les curseurs nommés et les sous-programmes (sous-procédures et sous-fonctions). Les variables locales sont soumises aux mêmes règles que les paramètres des fonctions d’entrée en ce qui concerne la spécification du type de données. Pour plus de détails, voir "Langage procédural PSQL" dans les sections DECLARE VARIABLE etDECLARE CURSOR,DECLARE PROCEDURE,DECLARE FUNCTION.

Une section de déclaration facultative est nécessairement suivie d’une instruction composée. Une instruction composée consiste en une ou plusieurs instructions PSQL comprises entre les mots-clés BEGIN et END. Une instruction composée peut contenir une ou plusieurs autres instructions composées. L’imbrication est limitée à 512 niveaux. Toute instruction BEGIN …​ END peuvent être vides, y compris le bloc principal.

Fonctions externes

Une fonction stockée peut être située dans un module externe. Dans ce cas, au lieu du corps de la fonction, l’emplacement de la fonction dans le module externe est spécifié en utilisant la phrase EXTERNAL NAME. L’argument de cette phrase est une chaîne de caractères avec le nom du module externe, le nom de la fonction dans le module et des informations définies par l’utilisateur séparées par un séparateur. La phrase ENGINE spécifie le nom du plug-in pour gérer les modules externes. Dans Firebird, le plug-in pour gérer les modules externes est UDR. Après le mot clé AS, une chaîne de caractères peut être spécifiée

Warning

Les fonctions externes déclarées comme DECLARE EXTERNAL FUNCTION, également connues sous le nom d’UDF, ne doivent pas être confondues avec les fonctions situées dans les modules externes déclarés comme CREATE FUNCTION …​ EXTERNAL NAME, appelé UDR (User Defined Routine). Les premières sont un héritage des versions précédentes de Firebird, avec des capacités nettement inférieures au nouveau type de fonctions externes. Dans Firebird 4.0, les UDF sont déclarées obsolètes.