Belajar MySQL : Membuat Auto Generator PIN menggunakan Trigger

Avatar photo

Sebelumnya kita telah mempelajari tentang penggunaan SQL Multitable dan Subquery. Kali ini saya ingin melanjutkan tentang Trigger.

Trigger merupakan store procedure yang dijalankan secara automatis saat user melakukan modifikasi data pada tabel. Modifikasi data yang dilakukan pada tabel yaitu berupa perintah INSERT, UPDATE, dan DELETE. INSERT , UPDATE dan DELETE bisa digabung jadi satu trigger yang dinamakan Multiple Trigger. ada beberapa event yang bisa kita gunakan untuk mengekseskusi triger yaitu :
  •     BEFORE INSERT – dijalankan ketika data di masukan ke dalam table.
  •     AFTER INSERT – dijalankan setelah data masuk ke dalam table.
  •     BEFORE UPDATE – dijalankan sebelum proses update data.
  •     AFTER UPDATE – dijalankan setelah proses proses update data.
  •     BEFORE DELETE – dijalankan sebelum proses delete data.
  •     AFTER DELETE – dijalankan setelah proses delete data.

Mungkin melalui pengertiannya akan membingungkan, oleh karena itu mari kita praktekkan.

 Script dasar dari trigger adalah :

CREATE TRIGGER nama_trigger after kejadian(i/u/d) ON nama_tabel
 FOR EACH ROW BEGIN
 INSERT INTO nama_tabel SET
 nama_field = kejadian(new/old).nama_field
 , nama_field=kejadian(new/old).nama_field
 ON DUPLICATE KEY UPDATE nama_field=nama_field+kejadian(new/old).nama_field;
 END$$

Membuat Auto Generator PIN Menggunakan Trigger
1. Membuat database db_user
2. Membuat tabel nama_user dengan struktur sebagai berikut :
3. Jika sudah, masuk ke tab trigger dan pilih Add Trigger
Untuk Query nya :

CREATE TRIGGER `pin_generator` BEFORE INSERT ON `nama_user` FOR
EACH ROW BEGIN DECLARE newpin varchar(255); SELECT CURTIME() +0
INTO newpin; SET NEW.pin = newpin; END4.
Setelah membuat trigger, kita coba test dengan memasukan 1 user (insert). Untuk kolom pin tidak
perlu diisi karena otomatis meng-generate dari jam+menit sekarang. Jika sudah klik GO
Untuk Query nya :
INSERT INTO `nama_user` (`pin`, `nama`, `nim`) VALUES (”, ‘Danang
Avan Maulana’, ‘5180411091’);
5. Dan hasilnya, kolom PIN pasti ter-generate sendiri. Dan Jam menit akan ter-generate sendiri.
Sebenarnya, script yang ada pada trigger tadi mengambil dari waktu sekarang (HHMMSS) dalam
bentuk Integer, tetapi karena kita hanya membatasi 4 karakter Varchar, maka yang masuk adalah 4
digit pertama, yaitu HHMM
Total
0
Shares
Leave a Reply

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

Previous Post

Data Breach Pada Toko Online ?

Next Post

[BUG BOUNTY] Email Spoofing | No Valid SPF Record

Related Posts