MySQL での外部キー列の名前変更: ステップバイステップ ガイド
外部キーを別のテーブルに追加すると、外部キー制約の問題を示すエラー 150 が発生することがよくあります。これを克服するには、「外部キーを削除し、列の名前を変更し、外部キーを再作成するという複雑な作業を回避できますか?
標準的なアプローチ
MySQL のドキュメントと提供された回答によると、最も安全で簡単な方法は、外部キー制約を削除し、列の名前変更を実行してから、外部キーを再確立することです。
ALTER TABLE table_name DROP FOREIGN KEY fk_name;
ALTER TABLE table_name RENAME COLUMN old_name TO new_name;
ALTER TABLE table_name ADD FOREIGN KEY fk_name (new_name) REFERENCES related_table(related_column);
代替メソッド
外部キーの削除と読み取りは一般に信頼できますが、これは、特に大きなテーブルの場合、面倒で潜在的に危険なプロセスです。いくつかの代替アプローチが存在しますが、常にサポートされているわけではなく、すべての場合に適切であるとは限りません。
推奨事項
外部キー列の名前を変更する最も信頼性が高く保証された方法については、制約を削除して再確立するという標準的なアプローチをお勧めします。データベースの変更を実行する前に、最新のバックアップが作成されていることを確認してください。
免責事項: 提供されるすべてのリソースの一部はインターネットからのものです。お客様の著作権またはその他の権利および利益の侵害がある場合は、詳細な理由を説明し、著作権または権利および利益の証拠を提出して、電子メール [email protected] に送信してください。 できるだけ早く対応させていただきます。
Copyright© 2022 湘ICP备2022001581号-3