Rumah > pangkalan data > tutorial mysql > Bagaimana untuk Menyelesaikan Ralat 'Tidak Boleh Mengubah Lajur Digunakan dalam Kekangan Utama Asing'?

Bagaimana untuk Menyelesaikan Ralat 'Tidak Boleh Mengubah Lajur Digunakan dalam Kekangan Utama Asing'?

Barbara Streisand
Lepaskan: 2024-11-11 02:38:02
asal
794 orang telah melayarinya

How to Resolve

Ralat: "Tidak Boleh Menukar Lajur Digunakan dalam Kekangan Kunci Asing"

Semasa cuba mengubah suai jadual, anda mungkin menghadapi ralat "Tidak boleh menukar lajur 'nama_kolom' : digunakan dalam kekangan kunci asing." Ralat ini berlaku apabila lajur yang diubah dirujuk sebagai kunci asing dalam jadual lain.

Dalam kes khusus anda, anda cuba mengubah suai lajur person_id dalam jadual orang, yang dirujuk sebagai kunci asing dalam meja makanan_kegemaran. Ini menimbulkan isu pergantungan, kerana menukar takrif lajur yang dirujuk berpotensi memecahkan integriti kekangan kunci asing.

Untuk menyelesaikan isu ini, anda boleh melumpuhkan semakan kunci asing buat sementara waktu:

SET FOREIGN_KEY_CHECKS = 0;
Salin selepas log masuk

Penggantungan ini akan membolehkan anda membuat perubahan yang diingini pada lajur tanpa melanggar kekangan kunci asing. Walau bagaimanapun, adalah penting untuk mendayakan semula semakan kunci asing selepas itu:

SET FOREIGN_KEY_CHECKS = 1;
Salin selepas log masuk

Awas: Melumpuhkan semakan kunci asing ialah operasi lanjutan yang harus dilakukan dengan berhati-hati. Ia boleh mendedahkan pangkalan data anda kepada isu integriti data buat sementara waktu. Sentiasa pastikan anda mempunyai sandaran semasa sebelum melaksanakan operasi sedemikian.

Atas ialah kandungan terperinci Bagaimana untuk Menyelesaikan Ralat 'Tidak Boleh Mengubah Lajur Digunakan dalam Kekangan Utama Asing'?. 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