Ternyata di mysql itu lebih mudah, nyaman dan aman buat kita gunain. Emang gw awalnya main di aplikasi dekstop yang lebih sering pake Access, begitu pake MYSQL wooouuuuwwww, bener bener asik deehhh. Maklum masih pemula. Hehe,
Fitur Relation/Relasi ada di akses dan mysql, dan ini ngebantu kita banget buat ngehubungin data dari master ke transaksi sampai data header ke detail. Nah yang bikin gw tertarik sama mysql itu ada fasilitas "Foreign key constraints", dan ini ngebantu banget buat data yang saling terhubung kaya yang pernah gw alamin.
Contoh : Gw bikin program pake mysql, nah dari semua transaksi yang ada di program itu menghasilkan grafik yang otomatis ngehitung dari tabel transaksi dan memfilter berdasarkan master. Tapi pas masternya di update si grafik masih menghitung detail yang terhubung sama master yang belum terupdate walaupun master sudah di update. Alhasil error dan gw buat update secara manual di codingan. Dan pas tau fasilitas ini gw seneng banget dan langsung gw hapus yang ada di codingan. karna fasilitas itu udah disiapin. So, kalo master nya berubah maka semua transaksi yang ada di master itu akan berubah begitu juga dengan hapus dan fasilitas ini bisa menahan mster agar tidak dihapus ketika sudah ada transaksinya
Oke cekidot deh.
1. Buka Mysql
2. Buka Table
3. Klik Structur
4. Klik Tampilan relasi / View Relasi
5. Baru deh kita atur
- Contraint name = Nama atau judul dari foreign key nya
- Kolom = Field yang ingin di hubungkan (Field di table bersangkutan/yg sedang dibuka)
- 3 Kolom selanjutnya : pilih database, table dan field (Catatan : field harus format index/primary key)
Tarrraaaaaa. Data sudah teramankan :))
----------------------------------------------------------------------------------------------------------
Berikut penjelasan fungsi OnUpdate dan OnDelete yang ada di "Foreign key constraints".
- RESTRICT, Jika tabel anak berisi nilai dalam kolom yang mengkait yang nilainya sama dengan di kolom terkait pada tabel induk, baris dalam tabel induk tidak bisa dihapus, dan nilai di kolom terkait tidak dapat diupdate. Ini adalah opsi default jika klausa ON DELETE atau ON UPDATE tidak dispesifikasikan.
- CASCADE, Baris-baris dalam tabel anak yang berisi nilai-nilai yang juga terdapat dalam kolom terkait dari tabel induk dihapus ketika barisbaris yang berkaitan dihapus dari tabel induk. Baris-baris dalam tabel anak yang berisi nilai-nilai yang juga terdapat dalam kolom terkait dari tabel induk diupdate ketika nilai-nilai yang berkaitan diupdate dalam tabel induk.
- SET NULL, Nilai-nilai dalam kolom yang mengkait dari tabel anak diset ke NULL saat baris-baris dengan data terkait dalam tabel induk dihapus dari tabel induk atau ketika data terkait dalam tabel induk diupdate. Untuk menggunakan opsi ini, semua kolom-kolom yang mengkait dalam tabel anak harus mengijinkan nilai NULL.
- NO ACTION Tidak ada aksi yang diambil dalam tabel anak ketika baris-baris dihapus dari tabel induk atau nilai-nilai dalam kolom terkait dalam tabel induk diupdate.
- SET DEFAULT Nilai-nilai dalam kolom-kolom yang mengkait dari tabel anak diset ke nilai default mereka ketika baris-baris dihapus dari tabel induk atau kolom terkait dari tabel induk diupdate.
Semoga Bermanfaat
0 komentar:
Post a Comment