エラー: インデックス名を持つ MySQL の外部キーの削除
テーブルから外部キー列を削除しようとすると、次のようなエラーが発生する場合があります。制約名の代わりにインデックス名を指定するとエラーになります。
指定された例では、外部キー制約を削除するクエリです。 locationIDX でインデックス名を使用すると、エラーが発生します:
ERROR 1025 (HY000): Error on rename
解決策: 制約名による外部キーの削除
列を正常に削除するには、制約名を次のように使用します。
ALTER TABLE assignment DROP FOREIGN KEY locationIDX;
Reason
MySQL では、外部キー制約は、関連付けられたインデックスの名前ではなく、名前によって参照されます。制約名を指定すると、データベース内の他のインデックスやリレーションシップに影響を与えることなく、正しい制約が確実に削除されます。
以上がMySQL でインデックス名を使用して外部キーを削除しようとするとエラーが発生するのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。