stored procedure di MySQL


Halo, aku bicara lagi tentang database. Aku memang ga ahli, tapi ga salah dong aku share. Sebenarnya kebanyakan apa yang aku bilang ini udah ada di MySQL Manual yang aku bisa bilang buku untuk membuat orang jadi dewa MySQL. Yah jelas, semuanya itu kan dimulai dari manual.

Kalau kita biasanya pakai SQL Server, maka akan mudah untuk membuat procedure. Namun kan kita di sini bicara MySQL. Emang beda? Ya, sedikit. Misalnya di parameter dan sintaks. Itu aja.

Kok bisa kepikiran untuk nulis ini? Yah gitu… Aku kemarin lagi buat aplikasi ATM, yang terjadi itu malah aku harus code procedure untuk MySQL yang berisi berbagai transaksi untuk ATM itu, misalnya penarikan. Aku codenya pakai console karena aku ga punya software khusus untuk memudahkan aku dengan GUI. Jadi aku berpikir untuk share apa yang aku dapat.

Begini. Pertama kita masuk ke mysql dengan [DIR]\mysql\bin\mysql -u user -p. Terus masukin passwordnya untuk user. Nah, setelah masuk, pilih database. Misal database toko, pakai use toko. Nah, definisikan delimiternya dengan cara delimiter karakter. Misalnya delimiter //. Lalu gini untuk buat procedurenya.

create procedure nama_prosedur (in input varchar(8), out output int, inout bisa duaduanya int)
begin
{sql statement}
end;//

Sebenarnya apa guna delimiter ini? Kalau delimiter biasa pada mysql itu kan titik koma ‘;’ nah, sementara pada tiap statement, diakhiri dengan titik koma, bayangain kalau diakhiri gitu, jadinya procedurenya kan error. 😀 makanya kita ganti delimiternya. Ga harus // sih. Kan bisa $$ 😀

Nah, statementnya itu bisa berisi transaction. Misalnya gini,

begin;
{isi transaksi}
commit;

Bisa juga sih dengan rollback, itu tergantung sama kita sebagai programmer.

Ingat, kalau bisa program di database, hindari program di aplikasi. Karena sekarang hidup aplikasi adalah storage, server, lalu client.

Nah, gimana dengan penjelasannya? Kalau memang belum cukup jelas, bisa comment dan tanya saya. Pasti aku berusaha jawab deh, tapi mohon jangan ngetest yah… Soalnya aku kan masih cupu.

Posted with WordPress for BlackBerry.

Author: Aditya Yedija Situmeang

Developer, Lover, Christian, Omnomnomnivore, Gamer.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s