FirebirdSQL logo
 FUNCTIONPACKAGE BODY 

Privilèges d’exécution

La clause optionnelle SQL SECURITY vous permet de spécifier avec quels privilèges les procédures et fonctions du package sont exécutées. Si INVOKER est sélectionné, alors les procédures et fonctions du package sont exécutées avec les privilèges de l’utilisateur appelant. Si DEFINER est sélectionné, alors les procédures et fonctions du package sont exécutées avec les privilèges de l’utilisateur définissant (propriétaire du package). Ces privilèges s’ajoutent aux privilèges accordés au paquet lui-même à l’aide de l’opérateur GRANT. Par défaut, les procédures et les fonctions du paquet sont exécutées avec les privilèges de l’utilisateur appelant. Il n’est pas possible de remplacer les privilèges d’exécution des procédures et des fonctions du paquet.

Tip

Les privilèges d’exécution par défaut pour les objets de métadonnées nouvellement créés peuvent être modifiés à l’aide de la commande

ALTER DATABASE SET DEFAULT SQL SECURITY {DEFINER | INVOKER}

Opérateur de terminaison

Certains éditeurs d’instructions SQL — notamment l’utilitaire isql de la suite Firebird, et peut-être certains éditeurs tiers — utilisent une convention interne qui exige que toutes les instructions soient terminées par un point-virgule.

Cela crée un conflit avec la syntaxe PSQL lors du codage dans ces environnements. Si vous n’êtes pas familier avec ce problème et sa solution, veuillez étudier les détails dans le chapitre PSQL dans la section intitulée Changing the terminator in isql.