FirebirdSQL logo

Exemples

Example 1. Création d’un nouvel en-tête de paquet ou modification d’un en-tête existant
CREATE OR ALTER 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

DROP PACKAGE

affectation

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

Disponible en

DSQL

Syntaxe
DROP PACKAGE package_name
Table 1. Paramètres de la fonction`DROP PACKAGE`
Paramètre Description

package_name

Nom du paquet.

L’instruction DROP PACKAGE supprime un en-tête de paquetage existant. Avant de supprimer un en-tête de paquetage (DROP PACKAGE), le corps du paquetage (DROP PACKAGE BODY) doit être supprimé, sinon une erreur sera générée. Si des dépendances existent sur l’en-tête du paquetage, une erreur sera générée lors de la tentative de suppression de cet en-tête.

docnext count = 4

Qui peut supprimer l’en-tête d’un paquet ?

L’instruction DROP PACKAGE peut être exécutée :

  • Administrateurs.

  • Propriétaire du paquet ;

  • Utilisateurs avec le privilège DROP ANY PACKAGE.

Exemples

Example 1. Suppression de l’en-tête du paquet
DROP PACKAGE APP_VAR;

RECREATE PACKAGE

affectation

Créer un nouvel en-tête de paquet ou recréer un en-tête de paquet existant.

Disponible en

DSQL

Syntaxe
RECREATE 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’instruction RECREATE PACKAGE crée un nouvel en-tête de paquetage ou recrée un en-tête de paquetage existant. Si un en-tête de paquetage portant ce nom existe déjà, l’instruction essaiera de le supprimer et de créer un nouvel en-tête de paquetage. Il n’est pas possible de recréer un en-tête de paquetage si l’en-tête de paquetage existant a des dépendances ou si le corps du paquetage existe. Après avoir recréé un en-tête de paquetage, les sous-routines et les privilèges du paquetage ne sont pas conservés.

Exemples

Example 1. Création d’un nouvel en-tête de paquet ou recréation d’un en-tête de paquet existant
RECREATE 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