Tutorial Menggunakan Trigger Hapus PHPMySQLI : Cara Menghapus Data Yang Saling Berhubungan Antar Tabel
Yo...Hallo...Kembali lagi dengan kami cie ngoding. Kali ini kami ingin memberikan tutorial tentang menghapus satu record di tabel tertentu dan record tabel lain juga ikut terhapus dengan ketentuan ada field yang terhubung.
Cara menghapus record antar tabel ini biasanya diberi nama trigger, untuk pengertian tentang trigger silahkan kalian lihat di google saja, karena sekarang saya akan memberitahukan tutorial tentang Cara menggunakan trigger hapus dengan PHPMySQLI.
Kalau boleh jujur, dulu saat saya mencari-cari di google tentang cara menggunakan trigger itu tidak terlalu paham tapi setelah saya lihat baik-baik ternyata begitu cara penggunaannya hehehe.
Oke langsung saja tutorial penggunaan trigger hapus di PHPMySQLI
-Pertama silahkan lihat tabel dibawah ini
Tabel member
Tabel pertanyaan
Tabel komentar
Pada tabel diatas ada 3 tabel yang saling terkait yaitu tabel member dan tabel pertanyaan dengan id_member yang sama, tabel pertanyaan dan tabel komentar dengan id_pertanyaan yang sama
Membuat trigger hapus yang menghubungkan member dengan pertanyaan yang memiliki id_member yang sama
-Selanjutnya silahkan masuk ke database anda, karena saya menggunakan database cie_ngoding maka saya menggunakan cie_ngoding
-Lalu masuk ke SQL dan ketikkan kodingan seperti dibawah ini didalam kolom sql
create trigger hapusmemberpertanyaan after delete on member FOR EACH ROW BEGIN delete from pertanyaan where id_member = old.id_member; END
-Jangan lupa menambahkan $$ pada delimiter
-Pastikan seperti gambar dibawah ini
-Pastikan seperti gambar dibawah ini
-Klik go
Penjelasan
create trigger hapusmemberpertanyaan after delete on member
-Kita membuat trigger di phpmyadmin dengan nama hapusmemberpertanyaan
-aksi trigger akan dilakukan saat setelah record pada member dihapus karena kita menggunakan after
-aksi trigger akan dilakukan saat setelah record pada member dihapus karena kita menggunakan after
delete from pertanyaan where id_member = old.id_member;
-Saat trigger dijalankan setelah record pada member dihapus, maka query hapus pada tabel pertanyaan pun dilakukan dengan ketentuan id_member yang ada di pertanyaan sama dengan id_member lama yang ada di tabel member
Membuat trigger hapus yang menghubungkan pertanyaan dengan komentar yang memiliki id_pertanyaan yang sama
-Silahkan masuk ke database anda lagi, karena saya menggunakan database cie_ngoding maka saya menggunakan cie_ngoding
-Lalu masuk ke SQL dan ketikkan kodingan seperti dibawah ini didalam kolom sql
-Lalu masuk ke SQL dan ketikkan kodingan seperti dibawah ini didalam kolom sql
create trigger hapuspertanyaankomentar after delete on pertanyaan
FOR EACH ROW
BEGIN
delete from komentar where id_pertanyaan = old.id_pertanyaan;
END
-Jangan lupa menambahkan $$ pada delimiter
-Pastikan seperti gambar dibawah ini
-Pastikan seperti gambar dibawah ini
-Klik go
Penjelasan
create trigger hapuspertanyaankomentar after delete on pertanyaan
-Kita membuat trigger di phpmyadmin dengan nama hapuspertanyaankomentar
-aksi trigger akan dilakukan saat setelah record pada pertanyaan dihapus karena kita menggunakan after
-aksi trigger akan dilakukan saat setelah record pada pertanyaan dihapus karena kita menggunakan after
delete from komentar where id_pertanyaan = old.id_pertanyaan;
-Saat trigger dijalankan setelah record pada pertanyaan dihapus, maka query hapus pada tabel komentar pun dilakukan dengan ketentuan id_pertanyaan yang ada di komentar sama dengan id_pertanyaan lama yang ada di tabel komentar
Setelah kita selesai membuat trigger hapusmemberpertanyaan dan hapuspertanyaankomentar maka kita membuat kodingan hapus MySQLI
-Sebenarnya kodingannya sama saja sih dengan kodingan PHPMySqli yang sebelumnya, tapi lebih baik kalian lihat kodingan dibawah ini
<table border="1px">
<tr>
<td>Nama</td>
<td>Aksi</td>
</tr>
<?php
$koneksi=new mysqli("localhost","root","","cie_ngoding");
$query="select * from member";
$cek=mysqli_query($koneksi,$query);
while($tampil=mysqli_fetch_array($cek)){
?>
<tr>
<td><?php echo $tampil['nama'];?></td>
<td><a href="hapustrigger.php?id=<?php echo $tampil['id_member']?>">Hapus</a></td>
</tr>
<?php
}
?>
</table>
-Simpan dengan nama coba_trigger_hapus.php
-untuk penjelasan kodingan diatas saya rasa tidak perlu karena kalian pasti sudah mengerti tapi kalau belum mengerti kalian bisa mempelajari di Cara Menghapus menggunakan PHPMYSQLI
-Hasilnya akan seperti ini
-untuk penjelasan kodingan diatas saya rasa tidak perlu karena kalian pasti sudah mengerti tapi kalau belum mengerti kalian bisa mempelajari di Cara Menghapus menggunakan PHPMYSQLI
-Hasilnya akan seperti ini
Lalu buat file php lagi dengan nama hapustrigger.php, untuk codingannya bisa dilihat dibawah ini
<?php
$id=$_GET['id'];
$koneksi=new mysqli("localhost","root","","cie_ngoding");
$query="delete from member where id_member='$id'";
$cek=mysqli_query($koneksi,$query);
header("location:coba_trigger_hapus.php");
?>
- Simpan dengan nama hapustrigger.php
-Nah sekarang coba kalian menghapus record kalian maka hasilnya adalah semua record yang ada pada member,pertanyaan, maupun di komentar akan kehapus juga.
-Nah sekarang coba kalian menghapus record kalian maka hasilnya adalah semua record yang ada pada member,pertanyaan, maupun di komentar akan kehapus juga.
Itu dia cara penggunaan trigger hapus dengan PHPMySQLI, lain kali saya akan memberitakan tutorial trigger lainnya yang terkait update maupun insert secara otomatis juga. Sampai jumpa pada tutorial selanjutanya dan semoga ilmu ini dapat bermanfaat dan kita tidak bingung lagi cara menghapus record di tebel yang berbeda secara bersamaan
Jika kalian ingin mendownload codingan diatas, kalian bisa mendownload dibawah ini
search of terms
- Trigger PhpMysqli
- Trigger Xampp
- Menghapus otomatis
- Menghapus data tabel lain dengan trigger
0 Response to "Tutorial Menggunakan Trigger Hapus PHPMySQLI : Cara Menghapus Data Yang Saling Berhubungan Antar Tabel"
Post a Comment