sql >> Database teknologi >  >> RDS >> Oracle

Introduktion til PL/SQL-pakker i Oracle-databasen

Indtil nu har vi set de fleste af de navngivne PL/SQL-blokke såsom databasemarkører, PL/SQL-funktioner, lagrede procedurer og triggere, nu er det tid til at gå videre til en anden mest efterspurgt PL/SQL-tutorial på min YouTube-kanal, som er PL/ SQL-pakker.

Hvad er PL/SQL-pakker i Oracle-databasen?

Pakker er gemte biblioteker i databasen, som giver os mulighed for at gruppere relaterede PL/SQL-objekter under ét navn. Eller med enkle ord, pakker er logiske grupper af relaterede PL/SQL-objekter. Pakker er navngivet PL/SQL-blokke, hvilket betyder, at de er permanent gemt i databaseskemaet og kan refereres til eller genbruges af dit program.

Definition af PL/SQL-pakker
Pakker er gemte biblioteker i databasen, som giver os mulighed for at gruppere relaterede PL/SQL-objekter under ét navn.

Hvad er indholdet i en pakke?

En pakke kan indeholde flere databaseobjekter såsom

  • Lagrede procedurer
  • PL/SQL-funktioner
  • Databasemarkører
  • Typeerklæringer samt
  • Variabler

Infobyte
Alle de objekter, der indgår i en pakke, kaldes samlet for pakkeelementer.

Pakkearkitektur

PL/SQL-pakken er opdelt i to dele:

  1. Pakkespecifikationen, også kendt som overskriften og
  2. Pakketeksten

Begge disse dele er gemt separat i dataordbogen. Pakkespecifikationen er den påkrævede del, hvorimod pakketeksten er valgfri, men det er en god praksis at levere kroppen til pakken.

Pakkespecifikation

Pakkespecifikation er også kendt som pakkehovedet. Det er den sektion, hvor vi sætter deklarationen af ​​alle pakkens elementer. Uanset hvilke elementer, vi erklærer her i dette afsnit, er offentligt tilgængelige og kan refereres uden for pakken.

Infobyte
I dette afsnit erklærer vi kun pakkeelementer, men vi definerer dem ikke. Dette er også den obligatoriske del af pakken.

Syntaks for pakkespecifikation

CREATE OR REPALCE PACKAGE pkg_name IS
	Declaration of all the package element…;
END [pkg_name]; 

Pakketekst

I pakketekst giver vi den faktiske struktur til alle pakkeelementer, som vi allerede har erklæret i specifikationen ved at programmere dem. Eller vi kan sige, at en pakketekst indeholder implementeringen af ​​de elementer, der er anført i pakkespecifikationen.

I modsætning til pakkespecifikation kan en pakketekst indeholde både deklaration af variablen såvel som definitionen af ​​alle pakkeelementerne. Alle pakkeelementer såsom PL/SQL-funktion, en markør eller en lagret procedure, som ikke er i pakkespecifikationen, men kodet i pakkens krop, kaldes Private pakkeelementer og dermed kan de ikke refereres uden for pakken.

Syntaks for pakketeksten

CREATE OR REPALCE PACKAGE BODY pkg_name IS
	Variable declaration;
	Type Declaration;
BEGIN
	Implementation of the package elements…
END [pkg_name];

Du kan henvise til min YouTube-video om det samme emne for detaljeret viden om begge ovenstående syntaks.

Det var det for introduktionen til PL/SQL-pakker i Oracle-databasen. Du kan sende mig din feedback, forslag eller spørgsmål på mine sociale medier eller på e-mailen. Klik her for mine kontaktoplysninger. Tak og god dag!


  1. Uventet @@rowcount-adfærd i en UDF i MS SQL 2019

  2. Skift sprog på systemet og fejlmeddelelser i PostgreSQL

  3. Håndtering af frysning i PostgreSQL

  4. SQLiteDatabase-markøren er kun tom på Android 5.0+-enheder