Rumah > pangkalan data > tutorial mysql > Bagaimanakah Saya Boleh Menambah 'ON DELETE CASCADE' kepada Kekangan Utama Asing Sedia Ada dalam SQL?

Bagaimanakah Saya Boleh Menambah 'ON DELETE CASCADE' kepada Kekangan Utama Asing Sedia Ada dalam SQL?

Barbara Streisand
Lepaskan: 2024-12-17 10:26:25
asal
161 orang telah melayarinya

How Can I Add

Mengubah suai Kekangan dalam SQL

Dalam SQL, kekangan memainkan peranan penting dalam mengekalkan integriti data dan memastikan ketekalan data dalam jadual. Satu tugas biasa ialah mengubah kekangan sedia ada untuk menambah atau mengubah suai sifatnya. Artikel ini akan membimbing anda melalui langkah-langkah mengubah kekangan, khususnya menumpukan pada cara menambah klausa "ON DELETE CASCADE" pada kekangan kunci asing sedia ada.

Kekangan Asal:

Andaikan anda mempunyai kekangan kunci asing sedia ada yang dinamakan ACTIVEPROG_FKEY1:

CONSTRAINT ACTIVEPROG_FKEY1 FOREIGN KEY(ActiveProgCode) REFERENCES PROGRAM(ActiveProgCode),
Salin selepas log masuk

Mengubah Kekangan:

Anda mahu menambah klausa "ON DELETE CASCADE" pada kekangan sedia ada. Klausa ini menyatakan bahawa jika rekod dipadamkan daripada jadual induk (PROGRAM), sebarang rekod yang sepadan dalam jadual anak (ACTIVEPROG) juga harus dipadamkan secara automatik.

Langkah-Langkah untuk Mengubah Kekangan:

Walau bagaimanapun, tidak seperti objek pangkalan data lain, kekangan tidak menyokong pengubahsuaian langsung. Sebaliknya, kekangan sedia ada mesti digugurkan dan dicipta semula dengan pengubahsuaian yang diingini:

  1. Lepaskan Kekangan Sedia Ada:

    ALTER TABLE your_table DROP CONSTRAINT ACTIVEPROG_FKEY1;
    Salin selepas log masuk
  2. Buat Semula Kekangan dengan "ON DELETE CASCADE":

    ALTER TABLE your_table
    ADD CONSTRAINT ACTIVEPROG_FKEY1 FOREIGN KEY(ActiveProgCode) REFERENCES PROGRAM(ActiveProgCode)
    ON DELETE CASCADE;
    Salin selepas log masuk

Dengan mengikut langkah ini, anda boleh berjaya mengubah kekangan sedia ada ACTIVEPROG_FKEY1 untuk menambah klausa "ON DELETE CASCADE". Ini akan memastikan bahawa sebarang pemadaman dalam jadual induk secara automatik mencetuskan pemadaman bertingkat bagi rekod berkaitan dalam jadual anak.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Menambah 'ON DELETE CASCADE' kepada Kekangan Utama Asing Sedia Ada dalam SQL?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan