Mengubah Tindakan Rujukan Kunci Asing
Kekangan kunci asing menguatkuasakan integriti rujukan dengan memastikan baris dalam jadual anak tidak boleh dipadamkan jika ia dirujuk mengikut baris dalam jadual induk. Secara lalai, kekangan kunci asing ditetapkan kepada ON DELETE CASCADE, yang memadamkan baris anak secara automatik apabila baris induknya dipadamkan.
Jika anda ingin menukar tindakan rujukan kepada ON DELETE RESTRICT, yang menghalang pemadaman induk baris jika mereka mempunyai baris anak yang berkaitan, anda boleh melakukannya menggunakan SQL berikut arahan:
Langkah 1: Gugurkan Kekangan Sedia Ada
ALTER TABLE table_name DROP FOREIGN KEY constraint_name;
Arahan ini mengalih keluar kekangan kunci asing sedia ada, tetapi membiarkan lajur kunci asing di tempatnya.
Langkah 2: Tambah Kekangan Baharu dengan ON DELETE HAD
ALTER TABLE table_name ADD CONSTRAINT constraint_name FOREIGN KEY (foreign_key_column) REFERENCES parent_table (parent_key) ON DELETE RESTRICT;
Arahan ini mencipta kekangan kunci asing baharu dengan ON DELETE RESTRICT, dengan berkesan menghalang baris induk daripada dipadamkan jika baris tersebut mempunyai baris anak yang berkaitan.
Nota : Sebelum membuat perubahan ini, pastikan data jadual adalah konsisten dengan rujukan yang diingini tindakan.
Atas ialah kandungan terperinci Bagaimana untuk Mengubah Tindakan Rujukan Kunci Asing daripada ON DELETE CASCADE kepada ON DELETE RESTRICT?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!