Mencari jawaban kanonik untuk pertanyaan mengapa paket harus lebih disukai dalam database Oracle daripada prosedur dan fungsi yang berdiri sendiri.
Mencari jawaban kanonik untuk pertanyaan mengapa paket harus lebih disukai dalam database Oracle daripada prosedur dan fungsi yang berdiri sendiri.
Jawaban:
Manfaat Paket
Pengelompokan logis - Metode yang bekerja bersama dapat dimasukkan ke dalam unit kohesif daripada hanya secara logis digabungkan tetapi secara fisik terpisah.
Metode Pribadi Aman - Fungsi dan Prosedur dapat dibuat pribadi untuk paket dan hanya digunakan di dalamnya. Ini membuat permukaan publik lebih sederhana dan lebih aman.
Manajemen Privilege - Izin dapat diberikan satu kali untuk sekelompok prosedur yang bekerja bersama daripada secara terpisah untuk setiap prosedur / fungsi yang diperlukan.
Secure Wrapping - Paket yang dibungkus lebih sulit untuk dibuka daripada fungsi / prosedur yang dibungkus.
Penamaan Sederhana - Ruang nama yang lebih besar memungkinkan nama yang lebih sederhana dan dapat digunakan kembali dalam paket lain.
Kinerja Lebih Baik - Paket dapat dikompilasi dan dimuat ke dalam memori secara keseluruhan daripada sepotong-sepotong sebagai metode lain. Manfaat ini jika ada sama sekali minimal dibandingkan dengan manfaat lainnya.
Reduced Invalidation - Mengubah paket tidak membuat validitas dependensi tidak sama dengan mengubah fungsi atau prosedur.
Fitur Unik - Variabel Paket, Konstanta Paket, Inisialisasi, Status Sesi, Komentar Paket, dan Metode Kelebihan Beban.
Referensi:
11.2 Panduan Konsep
Ajukan Pertanyaan Tom
StackOverflow.com Pertanyaan tentang Kinerja Paket
Unwrapping PL / SQL Presentation (pdf)