Packages
Package adalah sebuah objek skema yang mengelompokkan tipe, variabel, dan subprogram
yang berhubungan secara logis. Paket biasanya memiliki dua bagian, spesifikasi (spesifikasi)
dan tubuh; Kadang-kadang tubuh tidak perlu. Spesifikasi adalah antarmuka untuk paket. Ini
menyatakan jenis, variabel, pengecualian konstanta, kursor, dan subprogram yang dapat
dirujuk dari luar paket. Tubuh mendefinisikan queries untuk kursor dan kode untuk
subprogram
Pengguna dapat memikirkan spec sebagai antarmuka dan tubuh sebagai kotak hitam. Anda
dapat memisahkan, meningkatkan, atau mengganti tubuh paket tanpa mengubah spesifikasi
paket.
Untuk membuat spesifikasi paket, gunakan pernyataan SQL Create Package & Create
Package Body untuk mendefinisikan tubuh paket.
Spesifikasi memegang deklarasi publik, yang terlihat untuk prosedur yang tersimpan dan
kode lain di luar paket. Anda harus menyatakan subprogram pada akhir spec setelah semua
barang lainnya (kecuali pragmas yang menyebutkan fungsi spesifik; Pragmas tersebut harus
mengikuti spesifikasi fungsi).
Get dan Set adalah metode untuk variabel paket, jika anda ingin menghindari membiarkan
prosedur lain membaca dan menuliskannya secara langsung.
Deklarasi kursor dengan teks dari SQL queries. Menggunakan kembali teks pertanyaan yang
sama di banyak lokasi lebih cepat daripada mengetik ulang pertanyaan yang sama setiap kali
dengan sedikit perbedaan. Juga lebih mudah untuk dipertahankan jika anda perlu mengubah
pertanyaan yang digunakan di banyak tempat.
Pernyataan untuk pengecualian. Biasanya, anda perlu mampu merujukkan hal ini dari
prosedur yang berbeda, sehingga anda dapat mengatasi pengecualian dalam subprogram yang
disebut.
Deklarasi untuk prosedur dan fungsi yang memanggil satu sama lain. Anda tidak perlu
khawatir tentang susunan kompilasi untuk prosedur dan fungsi yang dikemas, membuatnya
lebih mudah daripada berdiri sendiri menyimpan prosedur dan fungsi ketika mereka
memanggil kembali dan seterusnya satu sama lain.
Deklarasi untuk prosedur dan fungsi yang kelebihan beban. Anda dapat membuat beberapa
variasi dari prosedur atau fungsi, menggunakan nama yang sama tetapi set parameter yang
berbeda
Variabel yang anda ingin tetap tersedia antara panggilan prosedur dalam sesi yang sama.
Anda dapat memperlakukan variabel dalam paket seperti variabel global.
Tipe deklarasi untuk tipe koleksi PL/SQL. Untuk melewati pengumpulan sebagai daerah di
antara prosedur atau fungsi yang tersimpan, anda harus menyatakan tipe dalam paket
sehingga panggilan dan yang disebut subprogram dapat merujuk padanya.