Oracle
 sql >> Base de données >  >> RDS >> Oracle

Comment créer des packages PL/SQL dans la base de données Oracle

Dans le didacticiel précédent, nous avons couvert toutes les théories nécessaires sur les packages PL/SQL dans Oracle Database. Là, nous avons appris ce que sont les packages, leur architecture et la syntaxe de création de ceux-ci. Maintenant que nous avons vu toutes les théories nécessaires pour répondre aux questions de votre examen de certification et de votre entretien, il est temps de prendre une longueur d'avance et de faire un exemple illustrant le processus de création d'un package PL/SQL dans Oracle Database. 

Comment créer un package ?

Pour la démonstration, je vais créer un package très simple composé de deux éléments :une fonction et une procédure stockée. J'ai essayé de garder cet exemple aussi simple que possible afin de garder le concept facile à comprendre.

Comme nous en avons parlé lors de la discussion de l'architecture du package dans le didacticiel précédent, le package est divisé en deux parties, qui sont

  • En-tête de package et
  • Le corps du paquet

Nous allons donc commencer par créer l'en-tête du package en premier

En-tête de package

CREATE OR REPLACE PACKAGE pkg_RebellionRider IS
  FUNCTION prnt_strng RETURN VARCHAR2;
  PROCEDURE proc_superhero(f_name VARCHAR2, l_name VARCHAR2);
END pkg_RebellionRider;

En examinant le code ci-dessus, nous pouvons clairement dire que le package contiendra deux éléments de package, à savoir une fonction PL/SQL prnt_strng et une procédure stockée proc_superhero.

Corps du package

--Package Body
CREATE OR REPLACE PACKAGE BODY pkg_RebellionRider IS
  --Function Implimentation
  FUNCTION prnt_strng RETURN VARCHAR2 IS
    BEGIN
      RETURN 'RebellionRider.com';
    END prnt_strng;
  
  --Procedure Implimentation
   PROCEDURE proc_superhero(f_name VARCHAR2, l_name VARCHAR2) IS
     BEGIN
      INSERT INTO new_superheroes (f_name, l_name) VALUES(f_name, l_name);
     END;
  
END pkg_rrdr;

Dans le code ci-dessus pour le corps du package, nous avons implémenté les deux éléments du package que nous avons définis dans l'en-tête du package.

Octet d'informations
L'en-tête et le corps du package sont des objets de base de données individuels, vous devez donc les compiler séparément afin de faire fonctionner votre package.

Comment accéder aux éléments du package ?

Nous avons créé et compilé avec succès l'en-tête et le corps de notre package, quelle est la prochaine étape ? Comme tous les autres objets de base de données, package a un objectif unique. À l'aide d'un package, vous pouvez regrouper différents objets de base de données sous un même nom et, comme les packages PL/SQL sont nommés blocs de base de données, ils peuvent donc être stockés dans la base de données et utilisés ultérieurement en cas de besoin.

Alors la question qui se pose ici est de savoir comment accéder aux éléments du package ? Pour accéder aux éléments définis et implémentés dans un package, nous utilisons la notation point (.). Selon lequel, pour accéder à l'élément de package, vous devez d'abord écrire le nom de votre package suivi de l'opérateur point (.) puis du nom de l'élément de package.

Exemple :

Par exemple, supposons que vous souhaitiez appeler la fonction PL/SQL prnt_strng de notre package pkg_RebellionRider.

--Package Calling Function
BEGIN
  DBMS_OUTPUT.PUT_LINE (PKG_RebellionRider.PRNT_STRNG);
END;

Dans le code ci-dessus utilisant un bloc anonyme, nous appelons la fonction prnt_strng du package pkg_RebellionRider.

Vous pouvez regarder le tutoriel vidéo sur le même sujet pour voir comment appeler la procédure proc_superhero de notre package. De plus, dans la même vidéo, j'ai expliqué en détail tous les codes ci-dessus. J'espère que vous apprécierez de regarder cette vidéo. Si c'est le cas, assurez-vous de partager et d'aimer.

Vous pouvez également partager ce blog avec vos amis ou collègues.

Merci et bonne journée.