通常、テーブルでInnoDBエンジンを使用している場合、このエラーが発生します。その場合、外部キーを削除してから、テーブルの変更を実行して列を削除する必要があります。
ただし、注意が必要なのは、列名を使用して外部キーを削除することはできないということです。代わりに、インデックス作成に使用される名前を見つける必要があります。それを見つけるには、次の選択を発行します:
SHOWCREATETABLEリージョン;
これにより、インデックスの名前が次のように表示されます。
制約
region_ibfk_1
FOREIGNKEY(country_id
)参照country
(id
)アクションなしの更新時のアクションなしの削除
次に、以下を発行します:
テーブル領域の変更外部キーの削除
region_ibfk_1
;
そして最後に:
テーブル領域の変更dropcolumncountry_id;
そして、あなたは行ってもいいです!