Berikut adalah dasar-dasar trigger, function, procedure serta view yang bisa diimplementasikan pada MYSQL 5 keatas. Dengan menggunakan trigger, function, procedure serta view, pemanfaatan MYSQL akan lebih bermanfaat. Contohnya : kita bisa membuat urutan langkah-langkah tertentu setelah suatu even dilakukan (ex: insert, update, delete). Tutorial ini ditujukan bagi yang belum mengenal trigger, function, procedure serta view sama sekali. Bagi yang sudah bisa, artikel ini boleh dan harus diabaikan 😛

Procedure dan Function

Syntax Umum

procedure

Syntak untuk membuat procedure dalam MySQL adalah sebagai berikut.

Function

Keterangan

1. proc_parameter (hanya pada procedure):

  • IN parameter dilewatkan ke dalam procedure tetapi modifikasi nilai dari parameter ini tidak kelihatan setelah procedure tersebut dipanggil.
  • Out parameter merupakan parameter yang dilewatkan dari dalam procedure ke pemanggil procedure tersebut. Nilai inisialisasi saat memanggil adalah null dan hasil parameter akan kelihatan setelah procedure dipanggil.
  • INOUT parameter diinisilaisai oleh pemanggil procedure, kemudian hasil modifikasinya tersebut akan kelihatan setelah procedure tersebut dipanggil.

2. characteristic

3. routine_body:

Routine body berisi syntax-syntax sql yang valid, seperti insert atau select. Bisa juga berisi compound. Compount diapit oleh begin… end. Syntax dari compound system adalah sebagai berikut.

Compound ini bisa diisi dengan label. Begin label dan end label harus sama. Di dalam compound juga bisa berisi deklarai variabel, looping atau kontrol program lainnya. Setiap Function harus punya return value untuk mengembalikan nilai yang dihasilkan

Contoh Procedure dan Function MySQL

Berikut adalah contoh penggunaan procedure. Pertama kita buat terlebih dahulu database dengan nama adakara. Kemudian silakan buat table berikut dengan isinya. Berikut ini adalah hasil dumping dari database adakara.

Procedure

Berikut ini adalah proses pembuatan procedure, dibuat dalam command from.

Function

mysql> create function tmbhSaudara(nama char(20)) returns char(5)

-> return concat('Saudara ',nama);

Query OK, 0 rows affected (0.36 sec)

Pemanggilan Procedure dan Function

Pemanggilan procedure menggunakan syntax

procedure_atau_function_name adalah nama procedure ata fungsi yang dipanggil dan parameter adalah nama-nama parameter procedure atau fungsi tersebut

Procedure

Function

mysql> select tmbhSaudara(' resika arthana');

+--------------------------------+

| tmbhSaudara(' resika arthana') |

+--------------------------------+

| Saudara resika arthana |

+--------------------------------+

1 row in set (0.00 sec)

Menghapus Procedure dan Function

Untuk menghapus procedure atau function digunakan perintah sebagai berikut

Trigers

Syntax Umum Triger

Keterangan

  1. DEFINER menunjukkan nama user yang mempunyai hak akses untuk mengakses triger.
  2. Triger_time menunjukkan saat triger tersebut dijalankan. Terdiri dari Before atau After
  3. Triger_time menandakan saat keadaan bagaimana triger tersebut aktif. Terdiri dari
    1. Insert : Triger aktif saat baris baru dimasukkan ke dalam tabel
    2. Update : Triger aktif saat ada baris diperbaharui dimasukkan di dalam tabel
    3. Delete :Triger aktif saat baris dihapus dalam tabel

Contoh Trigers

Silakan masukkan nilai ke test1

As a result, the data in the four tables will be as follows: