Jumat, 04 November 2011

Resume PBD 2 Pert 8 dan 9

Membuat PROCEDURE


Struktur untuk Blok Anonymous Blok PL / SQL
DECLARE (opsional)
Menyatakan PL / SQL objek yang akan digunakan dalam blok ini
BEGIN (wajib)
Tentukan pernyataan dieksekusi
PENGECUALIAN (opsional)
Menentukan tindakan yang terjadi jika INTOsalahan atau eksepsi muncul
END; (wajib)
Struktur untuk Blok PL / SQL subprogram
1. Spesifikasi subprogram
<header>
IS | AS
2. Tubuh Subprogram
Bagian Deklarasi
BEGIN
Bagian executable
EXCEPTION(optional)
Bagian Pengecualian
END;

Manfaat FROM subprogram
• Mudah pemeliharaan
• Peningkatan INTOaWHEREn data dan integritas
• Peningkatan kinerja
• Peningkatan INTOjelasan kode

Apakah PROCEDURE itu?
• Suatu PROCEDURE adalah jenis subprogram yang melakukan tindakan.
• PROCEDURE  dapat disimpan dalam database, sebagai sINTOma objek, untuk disekusi ulang.

Sintaks untuk Membuat PROCEDURE
CREATE [OR REPLACE] PROCEDURE procedure_name
[(Paramater1 [Mode1] datatype1,
parameter2 [mode2] datatype2,
. . )].
IS | AS
PL / SQL Block;

• Pilihan REPLACE menunjukkan bahwa jika PROCEDURE ada, maka akan turun dan diganti dengan Versi baru yang diciptakan oleh pernyataan itu.
• PL / SQL blok dimulai dengan baik BEGIN atau deklarasi variabel lokal dan berEND dengan baik END atau procedure_name END.


Formal versus Actual Parameter
• parameter formal: variabel yang dideklarasikan di daftar parameter spesifikasi subprogram
Contoh:

CREATE PROCEDURE raise_sal(p_id NUMBER, p_amount NUMBER)
...
END raise_sal;

• parameter aktual: variabel atau ekspresi direferensikan dalam daftar parameter panggilan subprogram
Contoh:
raise_sal (v_id, 2000)



OUT Parameters : contoh
CREATE OR REPLACE PROCEDURE query_emp
(P_Id DALAM TYPE% employees.employee_id,
p_name OUT TYPE employees.last_name%,
p_salary OUT TYPE% employees.salary,
p_comm OUT% TYPE employees.commission_pct)
IS
BEGIN
SELECT last_name, gaji, commission_pct
INTO p_name, p_salary, p_comm
FROM karyawan
WHERE employee_id = P_Id;
END query_emp;
/
emp_query.sql

Melihat Parameter OUT
• Memuat dan menjalankan file script emp_query.sql untuk CREATE PROCEDURE QUERY_EMP.
• Deklarasi variabel host, mengeksekusi QUERY_EMP yang PROCEDURE, dan mencetak nilai G_NAME global yang
variabel.
Contoh:
VARIABEL g_name VARCHAR2 (25)
VARIABEL g_sal NOMOR
VARIABEL g_comm NOMOR
Jalankan query_emp (171,: g_name,: g_sal,: g_comm)
CETAK g_name



Metode untuk Parameter Passing
• Posisi: Daftar parameter aktual di sama order sebagai parameter formal.
• Named: Daftar parameter aktual dalam rangka sewenang-wenang dengan menghubungkan masing-masing dengan resmi yang sesuai parameter.
• Kombinasi: Daftar beberapa parameter actual sebagai posisi dan beberapa seperti yang disebutkan.


Hapus Prosedur
Hapus prosedur di database
Contoh:
DROP PROCEDURE procedure_name
DROP PROCEDURE raise_salary;