Cara Menghapus 2 Data dari tabel berbeda yang berelasi pada Mysql Database

 


Gambar oleh 
mcmurryjulie dari Pixabay

Pendahuluan

Kegiatan menghapus row data pada database merupakah hal yang biasa sehari - hari dilakukan oleh seorang yang berprofesi sebagai Database Administrator. Sebagai seorang pemula tentu untuk menghapus sebuah data dari satu tabel merupakan hal yang mudah tinggal menjalankan sintak atau query dibawah ini maka data tersebut otomatis akan terhapus :


DELETE FROM [nama_tabel] WHERE [nama_field] = '[isi_field]'


Query diatas menjelaskan secara harfiah bahwa program memperintahkan database menghapus row data dari nama tabel yang ingin di hapus datanya lalu di kondisikan berdasarkan nama field atau kolom tertentu sama dengan parameter isi yang kita inginkan untuk dihapus.


Contoh Kasus

Dalam kasus normal seperti diatas tentu hal tersebut tidaklah menjadi masalah, Lalu bagaimana jika kita ditugaskan atau mendapatkan kasus baru dimana kita harus menghapus 2 (dua) row data sekaligus dari tabel yang berelasi. Hmm kasus yang cukup menarik ya. Tentu kita akan bahas tuntas disini. Oke misalnya saya mempunyai 2 tabel yang telah berelasi seperti terlihat pada gambar dibawah ini :


Relasi Tabel User & User_Token


Penjelasan skema dari relasi gambar diatas adalah bahwa tabel utama user memiliki relasi dengan tabel user_token yang dimana pada field id_user menjadi parameter key relasi dari kedua tabel tersebut. Dalam implementasinya bisa saya jelaskan sedikit mengenai fungsi dari tabel tersebut. 


Tabel user biasanya adalah tabel yang nantinya akan berisi data pokok dari user atau pengguna dari aplikasi atau program yang kita buat sedangkan tabel user_token biasanya digunakan sebagai tabel transaksi untuk memvalidasi data user sebelum benar - benar user tersebut dinyatakan aktif oleh sistem.


Hal tersebut bisa terjadi karena pada tabel user diatas ada field status yang nantinya akan berisi angka 1 atau 0 sesuai keinginan kita untuk menandakan dari hasil validasi data tersebut user akan akan aktif jika bernilai 1 atau sebaliknya.


Penyelesaiannya

Oke , Melanjutkan dari penyelesaian kasus yang kita ingin bahas diatas adalah Bagaimana perintah eksekusi atau query SQL nya  jika saya ingin menghapus data pada tabel user_token dan juga data pada tabel user jika status pada tabel usernya adalah 0 atau tidak aktif.


Untuk itu anda bisa memanfaatkan sintak atau query dibawah ini :


DELETE a.*, b.* FROM user a , user_token b where a.id_user = b.id_user AND a.status = '0' 

 

Perintah sintak atau query diatas adalah bahwa menghapus data untuk tabel user dan tabel user_token dengan kondisi bahwa pada tabel user field id_user sama dengan field id_user yang ada pada tabel user_token dan juga statusnya harus sama dengan 0 (nol) untuk memastikan data yang dihapus hanya untuk data user yang statusnya sedang tidak aktif saja.


Lihat juga penyelesaian kasus ini melalui video youtube di channel kami dibawah ini :




Sekian materi atau penjelasan singkat mengenai cara menghapus 2 Data dari tabel yang berbeda yang berelasi pada Mysql Database.


Semoga dapat membantu.

Berlangganan Artikel Kami

Mendukung Solusi IT untuk semua orang
Back to top