Solusinya dijelaskan di sini oleh Chris White bekerja untuk saya.
Akar masalah adalah bahwa MySQL membuat indeks dan kunci asing. Keduanya harus dihapus (kunci asing pertama bertentangan dengan apa yang dikatakan Chris).
-
tampilkan buat tabel table_name;
SHOW CREATE TABLE `table_name`: | table_name | CREATE TABLE `table_name` ( `id` int(20) unsigned NOT NULL auto_increment, `key_column` smallint(5) unsigned default '1', KEY `column_tablein_26440ee6` (`key_column`), <--- shows key name CONSTRAINT `table_name_ibfk_1` FOREIGN KEY (`key_column`) REFERENCES <--- shows foreign key constraint name `second_table` (`id`) ON DELETE SET NULL ) ENGINE=InnoDB DEFAULT CHARSET=utf8 |
-
Hapus batasan kunci asing:
ALTER TABLE table_name DROP FOREIGN KEY `table_name_ibfk_1`;
-
Hapus kuncinya
ALTER TABLE table_name DROP KEY `column_tablein_26440ee6`;
Itu berhasil untuk saya.