Ralat MySQL 1025: Membongkar Teka-teki 'Ralat pada Nama Semula'
Apabila melaksanakan pertanyaan 'alter table' untuk menggugurkan lajur, anda mungkin menghadapi ralat MySQL 1025, disertai dengan mesej 'Ralat pada nama semula'. Ralat ini biasanya muncul dalam jadual menggunakan enjin InnoDB.
Di Sebalik Ralat: Kekangan Utama Asing
Isu ini sering berpunca daripada kekangan kunci asing. Apabila cuba menjatuhkan lajur, anda mungkin menemui kunci asing yang merujuknya. MySQL memerlukan anda menggugurkan kunci asing terlebih dahulu untuk memastikan integriti rujukan.
Mendedahkan Nama Kunci Asing
Untuk mengenal pasti kunci asing yang dikaitkan dengan lajur yang ingin anda lepaskan , laksanakan pertanyaan ini:
SHOW CREATE TABLE region;
Pertanyaan ini akan mendedahkan nama kunci asing, yang biasanya mengikuti corak:
CONSTRAINT <foreign_key_name> FOREIGN KEY (<column_name>) REFERENCES <referenced_table> (<referenced_column>)
Pembetulan Langkah demi Langkah
ALTER TABLE region DROP FOREIGN KEY <foreign_key_name>;
ALTER TABLE region DROP COLUMN <column_name>;
Contoh Aliran
Menggunakan contoh yang disediakan dalam soalan, langkahnya ialah:
Ingat, penyelesaian ini disesuaikan untuk jadual InnoDB dengan kunci asing kekangan. Dalam senario lain, ralat mungkin disebabkan oleh faktor yang berbeza.
Atas ialah kandungan terperinci Mengapa MySQL Membuang Ralat 1025 'Ralat pada Nama Semula' Apabila Menggugurkan Lajur?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!