sql >> Database >  >> RDS >> Oracle

Oracle - Waarom zou ik pakketten gebruiken in plaats van op zichzelf staande procedures of functies?

Pakketten bieden de volgende voordelen:

  1. Samenhang:alle procedures en functies met betrekking tot een specifiek subsysteem zijn ondergebracht in één programma-eenheid. Dit is gewoon een goede ontwerppraktijk, maar het is ook gemakkelijker te beheren, b.v. bij bronbeheer.
  2. Constanten, subtypes en andere nuttige dingen:PL/SQL is meer dan opgeslagen procedures. Alles wat we kunnen definiëren in een pakketspecificatie kan worden gedeeld met andere programma's, bijvoorbeeld door de gebruiker gedefinieerde uitzonderingen.
  3. Overbelasting:de mogelijkheid om een ​​procedure of functie te definiëren met dezelfde naam maar met verschillende handtekeningen.
  4. Beveiliging:het definiëren van privé-procedures in de hoofdtekst van het pakket die alleen door het pakket kunnen worden gebruikt omdat ze niet worden weergegeven in de specificatie.
  5. Gemeenschappelijke code delen:nog een voordeel van privéprocedures.
  6. We hoeven alleen EXECUTE toe te kennen op een pakket in plaats van op verschillende procedures.


  1. Twee tabellen samenvoegen met een door komma's gescheiden lijst in het samenvoegveld

  2. Update records in tabel vanuit CTE

  3. Oracle XMLType-kolom in slaapstand gebruiken

  4. Sommige ELKE geaggregeerde transformaties zijn verbroken