Packages de base de données (Oracle)

Dans Oracle, les packages encapsulent les procédures associées, les fonctions et les curseurs et variables associés dans une même unité située dans la base de données. Les packages comportent le plus souvent deux parties : une spécification et un corps. La spécification est l'interface avec vos applications ; elle déclare les types, variables, constantes, exceptions, curseurs et sous-programmes disponibles. Le corps définit pleinement les curseurs et sous-programmes, et met en oeuvre la spécification.

L'utilisation des packages permet des améliorations dans les domaines suivants :

Vous pouvez générer des packages de base de données et procéder à leur reverse engineering de la même façon que pour les autres objets de base de données (voir Génération et reverse-engineering de bases de données). Lorsque vous procédez au reverse engineering du contenu d'un package de base de données, les sous-objets (variable, procédure, curseur, exception et type) sont créés à partir de la spécification et du corps du package de base de données.

Création d'un package de base de données

Vous pouvez créer un package de base de données de l'une des façons suivantes :
  • Sélectionnez Modèle > Packages de base de données pour afficher la boîte de dialogue Liste des packages de base de données, puis cliquez sur l'outil Ajouter une ligne.

  • Pointez sur le modèle ou sur le package dans l'Explorateur d'objets, cliquez le bouton droit de la souris, puis sélectionnez Nouveau > Package de base de données.

Propriétés d'un package de base de données

Vous pouvez modifier les propriétés d'un objet à partir de sa feuille de propriétés. Pour afficher la feuille de propriétés d'un package de base de données, double-cliquez sur son symbole dans le diagramme ou sur l'entrée correspondante dans le dossier Packages de base de données de l'Explorateur d'objets.

Les propriétés suivantes sont disponibles sur l'onglet Général :

Propriété

Description

Nom

Nom de l'élément. Il doit s'agir d'un nom clair et explicite, qui permette à des utilisateurs non spécialistes de savoir à quoi sert l'élément.

Code

Nom technique de l'élément. Ce nom est utilisé pour la génération de code ou de scripts. Il peut avoir une forme abrégée et il est préférable qu'il ne contienne pas d'espace.

Commentaire

Informations supplémentaires relatives au package de base de données.

Stéréotype

Sous-classification utilisée pour étendre la sémantique d'un objet sans changer sa structure ; peut être prédéfini ou bien défini par l'utilisateur

Propriétaire

Spécifie le nom du propriétaire de package de base de données, que vous pouvez choisir dans la liste des utilisateurs.

Privilège

Permet d'indiquer si les fonctions et procédures contenues dans le package de base de données sont exécutées avec les privilèges et dans la structure de l'utilisateur qui le possède (celui qui l'a défini), ou avec les privilèges et dans la structure de CURRENT_USER (celui qui l'a appelé)..

Table

Spécifie la table à laquelle le package de base de données est associé.

Modèle

Spécifie le modèle de package de base de données sur lequel le package courant est basé (voir Modèles de package de base de données). Si vous utilisez un modèle de package, les onglets restants de la feuille de propriétés seront renseignés par ce modèle de package. Si vous modifiez les autres onglets, le bouton Utilisateur à droite de la zone est enfoncé et le package est détaché du modèle de package et ne sera plus mis à jour automatiquement lorsque vous modifierez la définition de la table à laquelle il est associé.
Les onglets suivants sont également disponibles :