July 15, 2024

Membuat Prosedur dan Fungsi Menggunakan Database MySQL Part 1

2 min read

MySQL merupakan sebuah database yang menyediakan kemampuan untuk mendefinisikan sebuah prosedur dan fungsi sebagaimana layaknya sebuah bahasa pemrograman. Prosedur dan fungsi merupakan objek database yang berisi runutan perintah atau statement yang dibuat untuk memenuhi kebutuhan-kebutuhan khusus tertentu. Sebuah prosedur dan fungsi yang dibuat dapat digunakan secara  berulang-ulang, sehingga dapat mempersingkat penulisan kode atau perintah yang digunakan untuk mengirim permintaan ke server database.

Berikut adalah manfaat dari prosedur dan fungsi  terhadap database:

1.Sintaks SQL lebih fleksibel.
2.Memiliki kemampuan untuk menangani kesalahan (error).
3.Pembungkusan kode (code packaging and encapsulation).

Prosedur dan fungsi disimpan di dalam server database, sehingga kode hanya perlu ditulis sekali, tapi dapat digunakan oleh banyak aplikasi klien. Hal ini dapat meringankan tugas dari aplikasi klien.

4.    4.Mudah dipelihara.

Karena prosedur dan fungsi disimpan di server database, maka jika suatu saat perlu suatu perubahan terhadap prosedur atau fungsi tersebut, maka hanya perlu dilakukan sekali. Hasil perubahannya secara otomatis akan diterapkan ke semua aplikasi yang mengakses prosedur atau fungsi tersebut.

A.     Membuat dan Mengeksekusi Prosedur

Prosedur dapat memiliki satu atau lebih perintah yang dikumpulkan menjadi satu. Untuk itu perlu menggunakan Blok BEGIN – END. Setiap statemen atau perintah dalam prosedur dipisahkan menggunakan tanda titik koma ( ; ).

Berikut sintaks prosedur pada MySQL :

[sourcecode]
DELIMITER //
CREATE PROCEDURE select_mhs()
BEGIN
SELECT namaMhs FROM Mahasiswa
WHERE idMhs = ‘123456’;
END;
[/sourcecode]

Prosedur dieksekusi dengan menggunakan perintah CALL seperti berikut :

[sourcecode]
CALL [nama_prosedur (parameter)];
[/sourcecode]

Sebagai contoh, berikut adalah sebuah tabel Mahasiswa dengan data sebagai berikut :

1.      Prosedur Tanpa Parameter

Kemudian dibuat sebuah prosedur tanpa parameter sebagai berikut :

tabeladelin

[sourcecode]
CREATE PROCEDURE <nama_prosedur> ([daftar parameter])

BEGIN

[daftar deklarasi variabel]

<Statemen 1 >;

<Statemen 2>;

…….

END;

[/sourcecode]

Prosedur di atas dieksekusi dengan perintah :

[sourcecode]
CALL [nama_prosedur (parameter)];
[/sourcecode]

Maka hasil yang diperoleh adalah :

tabeladelin1

2.      Prosedur Dengan Parameter

Berikut contoh prosedur dengan parameter untuk tabel di atas. Prosedur ini akan memasukkan data ke dalam tabel Mahasiswa. Nilai tersebut akan dimasukkan ke dalam kolom idMhs dan namaMhs yang menjadi parameter dari prosedur.

[sourcecode]
DELIMITER //

CREATE PROCEDURE insert_mhs(id char(5), nama varchar(50))

BEGIN

INSERT INTO Mahasiswa (idMhs, namaMhs)

VALUES (id,nama);

END;

//
[/sourcecode]

Prosedur di atas dieksekusi dengan perintah :

[sourcecode]
CALL insert_mhs(‘123450’,’Joko Pramono’);
[/sourcecode]

Hasil eksekusi prosedur adalah :

tabel adelin1

Leave a Reply

Your email address will not be published. Required fields are marked *

Copyright © All rights reserved. | Newsphere by AF themes.