重新命名MySQL 中的外鍵列:逐步指南
當嘗試重命名MySQL 中充當外鍵列的列時外鍵在另一個表中時,常會遇到錯誤150,表示外鍵約束問題。為了克服這個問題,您可能會遇到這樣的問題:我們能否避免刪除外鍵、重新命名列,然後重新建立外鍵的複雜任務?
標準方法
根據MySQL文件和提供的答案,最安全、最直接的方法仍然是刪除外鍵約束,執行列重命名,然後重新建立外鍵key:
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