FirebirdSQL logo

Exemples

Example 1. Création d’un en-tête de paquet
CREATE PACKAGE APP_VAR
AS
BEGIN
  FUNCTION GET_DATEBEGIN() RETURNS DATE DETERMINISTIC;
  FUNCTION GET_DATEEND() RETURNS DATE DETERMINISTIC;
  PROCEDURE SET_DATERANGE(ADATEBEGIN DATE, ADATEEND DATE DEFAULT CURRENT_DATE);
END

Idem, mais les procédures et fonctions du paquet seront exécutées avec les droits de l’utilisateur qui les définit (propriétaire du paquet).

CREATE PACKAGE APP_VAR
SQL SECURITY DEFINER
AS
BEGIN
  FUNCTION GET_DATEBEGIN() RETURNS DATE DETERMINISTIC;
  FUNCTION GET_DATEEND() RETURNS DATE DETERMINISTIC;
  PROCEDURE SET_DATERANGE(ADATEBEGIN DATE, ADATEEND DATE DEFAULT CURRENT_DATE);
END

ALTER PACKAGE

affectation

Modification de l’en-tête du paquet.

Disponible en

DSQL

Syntaxe
ALTER PACKAGE package_name
[<rights clause>]
AS
BEGIN
  [<package_item> ...]
END

<package_item> ::=
    <function_decl>;
  | <procedure_decl>;

<function_decl> ::=
  FUNCTION func_name [(<in_params>)]
  RETURNS <type> [COLLATE collation]
  [DETERMINISTIC]

<procedure_decl> ::=
  PROCEDURE proc_name [(<in_params>)]
  [RETURNS (<out_params>)]

Pour plus d'informations, voir. CREATE PACKAGE

L’opérateur ALTER PACKAGE modifie l’en-tête du paquet. Il vous permet de changer le nombre et la composition des procédures et des fonctions, leurs paramètres d’entrée et de sortie. Le code source du corps du paquet est conservé. L’état du corps du paquet correspondant à son en-tête est indiqué dans la colonne RDB$PACKAGES.RDB$VALID_BODY_FLAG.