Modul 10 - PL-SQL
Modul 10 - PL-SQL
PEMROGRAMAN
PL/SQL
Package
10
Ilmu Komputer Teknik Informatika F061700004 Wawan Kurniawan, M.Kom
Abstract Kompetensi
Modul ini berisi penggunaan package Mahasiswa mampu menggunakan
dalam oracle database package pada Oracle
Pendahuluan
Package (ORACLE) adalah kumpulan dari fungsi dan procedure. Tiap package harus terdiri
dari dua obyek, yaitu package body dan package specification.
Package body :
Package (SQL) adalah sebuah schema object yang mengelompokkan PL/SQL types, items,
dan subprograms, yang terkait secara logikal. Packages biasanya memiliki dua bagian, sebuah
specification dan sebuah body, meskipun kadangkala body tersebut tidak diperlukan.
Specification (atau spec) merupakan antarmuka terhadap aplikasi-aplikasi kita; ia
mendeklarasikan types, variables, constants, exceptions, cursors, dan subprograms yang
tersedia untuk digunakan.
Body secara penuh mendefinisikan cursors dan subprograms, dan juga
mengimplementasikan spec.
Hanya deklarasi di dalam package yang terlihat dan dapat dikses terhadap aplikasi. Detil
implementasi di dalam package body disembunyikan dan tidak dapat diakses. Jadi, kita dapat
mengubah body (implementation) tanpa harus meng-compile ulang program-program yang
memanggilnya.
Private component: semua yg ditempatkan pada package body adalah private, dan hanya
dapat diakses didalam package body yg sama.
Dan tidak perlu berlama-lama lagi, dibawah ini adalah sebuah blok PL/SQL package.
Pertama kita harus buat spesifikasi package, disini ada dua prosedur yg dideklarasikan pada
package p_report.
Setelah package dan package body dibuat maka langkah selanjutnya adalah melakukan tes
apakah prosedur-prosedur tersebut apakah dapat digunakan. Untuk menjalankan prosedur
didalam package maka gunakan perintah dibawah ini:
Ternyata sukses juga dieksekusi untuk prosedur yg kedua, dan cek juga pada direktori output
bahwa file report salemp_report.txt juga telah berhasil dibuat.
Oh iya, jangan lupa Login sebagai user HR karena kita menggunakan tabel Employees dan
Departments.