Deprecated: Required parameter $output follows optional parameter $depth in /home/pkaykstj/andiandaria.trinita.ac.id/wp-content/themes/jannah/framework/classes/class-tielabs-mega-menu.php on line 451
Perbedaan RESTRICT, CASCADE, SET NULL dan NO ACTION pada Foreign Key di MYSQL / MARIADB – Charissa
AppWebDatabase

Perbedaan RESTRICT, CASCADE, SET NULL dan NO ACTION pada Foreign Key di MYSQL / MARIADB

Kalau kita bicara tentang database tentu biasanya didalamnya terdapat 2 atau lebih tabel yang saling berhubungan satu sama lain (relasi). Namun kadang kita sering mengalami bahwa jika kita merubah salah satu tabel tersebut, kita akan kehilangan pasangannya pada tabel lainnya.

Untuk mengatasi hal tersebut maka ada yang namanya Foreign Key Options.

Foreign Key Options ini digunakan untuk mengatur relasi antar 2 tabel. Jika dalam MySQL/MariaDB, Foreign Key Options ini dapat digunakan jika kita menggunakan engine InnoDB.

Dalam Foreign Key Options tersebut ada 4 pilihan pengaturan antara lain:

RESCRICT adalah jika kita menghapus atau merubah baris data dalam tabel A maka tidak akan diperbolehkan jika pada tabel B masih ditemukan relasi datanya. InnoDB dapat menolak perintah perubahan atau penghapusan tersebut.

CASCADE adalah jika kita menghapus atau merubah baris data dalam tabel A secara otomatis akan menghapus atau merubah baris yang sesuai dalam tabel B.

SET NULL adalah jika kita menghapus atau merubah baris data dalam tabel A secara otomatis akan merubah baris pada tabel B menjadi NULL pada kolom yang terelasi. Hal ini dapat dilakukan jika kolom foreign key tidak memiliki pengaturan NOT NULL.

NO ACTION dalam standar SQL, NO ACTION berarti tidak merubah apapun pada tabel anak jika kita merubah data pada salah satu tabelnya.

Related Articles

Tinggalkan Balasan

Alamat email Anda tidak akan dipublikasikan. Ruas yang wajib ditandai *

Back to top button