pl/sql programming

Post on 21-Jan-2016

129 Views

Category:

Documents

1 Downloads

Preview:

Click to see full reader

DESCRIPTION

PL/SQL PROGRAMMING. PL/SQL adalah prosedur berkelanjutan dari Oracle -SQL yang menawarkan satu bentuk bahasa pemrograman. - PowerPoint PPT Presentation

TRANSCRIPT

PL/SQL PROGRAMMINGPL/SQL PROGRAMMING

PL/SQL adalah prosedur berkelanjutan dari Oracle -SQL yang menawarkan satu bentuk bahasa pemrograman.

PL/SQL memungkinkan user atau designer untuk membentuk suatu aplikasi database yang kompleks yang menuntut pemakaian kontrol struktur dan elemen prosedural seperti prosedur, fungsi, atau modul.

Sasaran utama PL/SQL :

1. Memaksimalkan pengertian dari SQL.

2. Proses query yg maksimal.

3. Optimasi kombinasi dari perintah pada SQL.

4. Membangun aplikasi database yg modular.

5. Pemakaian kode pemrograman.

6. Mengurangi nilai maintenance dan perubahan aplikasi.

STRUKTUR PL/SQLSTRUKTUR PL/SQL

Block header

DECLARE

constant

variable

cursor

user defined exceptions

BEGIN

PL/SQL statement

EXCEPTION

exception handling

END;

DEKLARASI dan CONSTANTDEKLARASI dan CONSTANT

Nama_variabel constant tipe_data not null := ekspresi

Contoh

Cursor nama_cursor (list parameter) is select_statement

Contoh

CURSOR CURSOR

CURSOR for LOOPCURSOR for LOOP

Suatu CURSOR for LOOP akan mendeklarasikan indeks dari loopingnya sebagai suatu record yg merepresentasikan tampilan baris dari suatu database.

Untuk menunjuk suatu field dari record digunakan notasi dot.

VARIABEL CURSOR VARIABEL CURSOR

Seperti sebuah cursor, variabel cursor menitikberatkan pada baris dari hasil query. Tetapi, tidak seperti sebuah cursor, variabel cursor dapat dibuka pada berbagai tipe query secara kompatibel.

Variabel cursor tidak mengikat pada query tertentu. Penggunaan variabel cursor akan fleksibilitas dan kemudahan untuk memfokuskan pada penyajian data dari suatu database.

ATTRIBUTEATTRIBUTE

Variabel dan cursor pada PL/SQL mempunyai atribut, yang mana properti akan mengijinkan kita untuk merujuk pada suatu tipe data dan struktur tertentu tanpa harus kita definisikan terlebih dahulu.

Tanda persen ( % ) digunakan sebagai indikator atribut.

%TYPE%TYPE

Atribute %TYPE%TYPE menyediakan tipe data dari variabel atau kolom database.

CONTOH : my_tittle books.tittle%TYPE

Pendeklarasian dengan tipe ini memberikan 2 keuntungan, yaitu :

1. Kita tidak perlu mengetahui secaar pasti tipe data dari tittle.

2. Apabila kita merubah tipe data tittle, maka secara otomatis tipe data my_tittle juga akan berubah.

%ROWTYPE%ROWTYPE

Atribute %ROWTYPE%ROWTYPE menyediakan tipe data dari record yang merepresentasikan suatu baris dari tabel.

Jika kita akan mendeklarasikan suatu cursor yg menyediakan data tertentu, kita dapat menggunakan tipe data ini untuk mendeklarasikan recordyang menyimpan informasi yang sama.

LANGUAGE LANGUAGE

EXCEPTION HANDLINGEXCEPTION HANDLING

when exception_name then sequence of statement

CONTROL STRUCTURECONTROL STRUCTURE

Struktur kontrol adalah tambahan terpenting PL/SQL pada SQL.

Tidak hanya memanipulasi data Oracle, tetapi juga dapat memproses data menggunakan statemen kondisi, statemen iteratif, dan statemen ‘sequential flow of control’ seperti IF-THEN-ELSE, FOR-LOOP, WHILE-LOOP, dll.

Control StructureControl Structure

Instruksi yang digunakan adalah IF-THEN-ELSE.

Apabila kondisi pada IF terpenuhi, maka statemen setelah THEN akan dieksekusi, tetapi jika kondisinya tidak terpenuhi, maka statemen setelah ELSE yang akan dieksekusi.

Iterative StructureIterative Structure

Instruksi yang menggunakan LOOP.

LOOP akan mengeksekusi sekumpulan statemen secara berulang-ulang.

Instruksi yang menggunakan FOR LOOP.

FOR-LOOP akan mengeksekusi sekumpulan statemen secara berulang-ulang sebanyak nilai integer yg kita berikan.

Instruksi yang menggunakan WHILE-LOOP.

Untuk masing-masing iterasi, kondisinya akan dievaluasi terlebih dahulu. Apabila kondisinya benar maka statement-nya akan dijalankan, kemudian kontrol akan kembali ke bagian teratas dari looping. Apabila kondisinya salah atau bernilai null, maka looping akan dilewatkan dan akan menjalankan statemen selanjutnya.

Instruksi yang menggunakan EXIT-WHEN.

Statement dalam looping akan dijalankan, sampai menemukan statemen EXIT. Setelah EXIT ditemukan, looping akan mengevaluasi kondisi yang ada. Apabila kondisinya benar maka looping akan berhenti dan dilanjutkan dengan statemen berikutnya.

Sequential StructureSequential Structure

Instruksi yang digunakan adalah GOTO.

Ketika instruksi dijalankan, statemen GOTO akan memindahkan kontrol sesuai dengan label yang diberikan.

PROCEDUREPROCEDURE

Adalah sebuah PL/SQL Block yang bisa dipanggil ataua dijalankan seperti PL/SQL statemen. Pada prosedur juga dimungkinkan untuk mengirimkan data.

Secara umum format dari prosedur adalah sbb :

PROCEDURE nama_prosedur (parameter IN OUT tipe data) IS

deklarasi variabel;

BEGIN

statement;

END;

Pada prosedur, suatu parameter bisa hanya bersifat IN yaitu nilai parameter yg dikirimkan ke dalam suatu prosedur, selain itu juga bersifat OUT yaitu nilai parameter yg dikirim keluar dari suatu prosedur. Sedangkan jika diinginkan suatu data terswebut dikirim ke dalam dan juga keluar, maka digunakan tipe IN OUT.

FUNCTIONFUNCTION

Adalah suatu PL/SQL Block yg menghasilkan suatu nilai dan biasa digunakan seperti kita menulis suatu ekspreasi. Pada fungsi dimungkin untuk mengirimkan data.

Secara umum format dari fungsi adalah sbb :

FUNCTION nama_fungsi (parameter IN OUT tipe data) RETURN tipe_data IS

deklarasi variabel;

BEGIN

statement;

RETURN (value);

END;

Parameter yang ada pada suatu fungsi memiliki tipe data yang sma dengan parameter pada suatu prosedur.

Sequential StructureSequential Structure

Instruksi yang digunakan adalah GOTO.

Ketika instruksi dijalankan, statemen GOTO akan memindahkan kontrol sesuai dengan label yang diberikan.

top related