Posted by : sani arfian Kamis, 23 Mei 2013

1.  STORED PROCEDURE

1.1     PENGERTIAN

Stored Procedure adalah kumpulan perintah SQL yang diberi nama dan disimpan  di server. Stored Procedure biasanya berisi perintah-perintah umum yang berhubungan dengan database pada server, dan menghasilkan sekumpulan record. Stored Procedure ditulis dalam bentuk sebuah script.  Dalam SQL Server store procedure memiliki kemampuan antara lain :

·      Menerima parameter input dan mengembalikan beberapa nilai parameter output dari procedure yang dipanggil.

·      Mengandung statement pemrograman yang melakukan operasi terhadap database termasuk memanggil store procedure lain.

·      Memberikan status yang mengindikasikan keberhasilan atau kegagalan eksekusi store procedure

Kegunaan pembuatan stored procedure pada SQL Server :

1.      Stored procedure dapat digunakan untuk memanipulasi data.

2.       Melakukan sebuah pekerjaan (job) secara otomatis.

3.      Melakukan perawatan (maintenance) secara otomatis.

Keuntungan pemakaian store procedure adalah :

·         Merupakan pemrograman modular

·          Store procedure dibuat sekali dan dapat dipakai berulang untuk komputasi yang sama

·         Memungkinkan eksekusi lebih cepat

Ketika pertama kali dijalankan store procedure akan tersimpan dalam memori. Sehingga memungkinkan eksekusi berikutnya lebih cepat.

·         Mengurangi trafik jaringan

Barisan kode transact SQL yang seharusnya dilewatkan jaringan, akan digantikan dengan statement tunggal pemanggilan store procedure.

·         Dapat digunakan sebagai mekanisme sekuriti

Pengguna dimungkinkan mengeksekusi Store procedure, walau mungkin tidak dapat mengeksekusi procedure didalamnya secara langsung.

Tipe Stored Procedure

·                 System Stored Procedure:

o      Nama dimulai dengan sp_ atau xp_ (extended stored procedur  akan dihilangkan)

o       Dibuat dalam database master

o       Tujuannya untuk pengaplikasian dalam database apapun

o       Sering digunakan oleh sysadmin

Local Stored Procedure:

- Ditetapkan di database lokal

- Nama sering dimulai dengan pr_ atau usp

- Tanpa prefix

- Sesuaikan dengan yang ada di aplikasi (misal menggunakan object/komponen seperti ORM)

- Bagaimana Cara membuat Stored Procedure?

- Kerangka sederhana Store Procedure

CREATE PROC procedure_name
[ { @parameter data_type } ]
AS sql_statement

Store Procedure terdiri dari:
1. Statemen CREATE PROC {PROCEDURE}
2. Nama Procedure;
3. Parameter list
4. SQL statement.

Perintah Dalam stored procedure terdiri dari :

· Menapilkan data (SELECT)

· Menambah data (INSERT)

· Mengubah  data (UPDATE)

· Menghapus data (DELETE)

1.2     Klausa Dalam Stored Procedure

· Delimiter , digunakan untuk memberi tahu kepada myql soal delimiter yang digunakan, secara default menggunakan ; jadi bila ada tanda ; mysql akan mengartikan akhir dari statement, pada contoh di atas delimeter yang digunakan $$ jadi akhir statementnya adalah $$ .

· Create Procedure ,  adalah header untuk membuat store procedure .

· Begin – End  , adalah body dari store procedure, jadi semua SQL nya di tulis disini. 

Parameter digunakan dalam stored procedure terdiri dari 3 jenis

Paremeter IN

Digunakan hanya untuk input saja. Jika parameter ini dirubah nilainya, maka tidak akan mempengaruhi nilai variabelnya setelah stored procedure dieksekusi

Parameter OUT

Digunakan untuk mengeluarkan hasil proses dalam store procedure agar bisa diterima diluar procedure

Parameter INOUT

Dapat mengirim dan menerima nilai variabel.

2. TRIGGER

2.1 PENGERTIAN 

Trigger adalah sebuah objek database yang diasosiasikan dengan sebuah tabel dan akan aktif apabila sebuah event terjadi pada tabel tersebut.

Kegunaan  Trigger

·  Dapat menyimpan data suatu record ke tabel lain sebelum data tersebut di update, di delete atau di insert.

·  Menyederhanakan pemrograman karena dapat secara otomatis dilaksanakan dalam server.

·  Dapat memberikan nilai default.

Sintak penulisan trigger berisi komponen berikut

·  Before digunakan jika trigger dijalankan sebelum DML event  pada tabel.

·  After maksudnya trigger dijalankan setelah DML event  pada tabel.

·  Instead of digunakan jika trigger dijalankan pada sebuah view.

Tipe Trigger

·  Statement, trigger dijalankan sekali saja pada saat terjadi sebuah event. Statement trigger juga dijalankan sekali, meskipun tidak ada satupun baris yang dipengaruhi oleh event yang terjadi.

·   Row, trigger dijalankan pada setiap baris yang dipengaruhi oleh terjadinya sebuah event. Row trigger tidak dijalankan jika event dari trigger tidak berpengaruh pada satu baris pun.

Perintah Dalam Trigger

Insert, memasukkan data baru pada tabel tertentu

Update, merubah isi kolom terentu pada suatu tabel

Delete, menghapus data pada tabel tertentu

2.2               Klausa Dalam Trigger:

Delimiter, digunakan untuk memberi tahu sql tentang delimiter yang kita gunakan.

When, digunakan untuk kondisi pembatasan pada trigger.

Replace, digunakan untuk mengganti trigger jika trigger yang dibuat telah tersedia / ada.

Begin – end, digunakan untuk memulai dan mengakhiri trigger body (bagian prosedur yang dituliskan pada trigger.

New, digunakan untuk mendapatkan data baru pada sebuah tabel

Old, digunakan untuk mendapatkan data lama pada sebuah tabel

{ 2 komentar... read them below or Comment }

  1. Tulisan yang bagus dan sangat bermanfaat, terimakasih sudah share, saya tunggu tulisan berikutnya mengenai stored procedure (saya bayangkan mungkinkah dalam stored procedure ada statement if then else atau switch case dll ?)

    BalasHapus
  2. Terimah kasih.... sepertinya klw yg sperti itu bsa
    tapi saya sndi blm mncobanya :)

    BalasHapus

Welcome to My Blog

PENGUNJUNGKU :

Post

Popular Post

Diberdayakan oleh Blogger.

Followers

- Copyright © SANI ARFIAN - Powered by Blogger - Designed by SANI ARFIAN -