2005年08月24日(水) [長年日記]
■ [db] MySQLで外部キー削除時にエラー
MySQL 4.0.24でテーブルから外部キーを削除しようとして
alter table YYYY drop foreign key ZZZZZ;
を実行したら
ERROR 1025: Error on rename of './XXX/YYYY' to './XXX/#sqlW-WWWW-WWWW' (errno: 152)
のようなエラーが表示されて削除できなかった。
検索するとMySQLのバグMySQL Bugs: #10333: Incorrect error when deleting a foreign key with incorrect constraint nameがヒットした。エラーメッセージが適切でないというバグ。
外部キーの識別子の指定を間違えるとこのエラーが出るのか。上のZZZZZの所にはカラム名を指定していたが、外部キーの識別子はデフォルトではカラム名にならないのだ。show create tableを使って外部キーの識別子を調べ、それを指定することで解決。
■ やること
- ブラウンの安い電動歯ブラシ買う
- 蛍光灯を捨てる
腕時計(8/18)
同じ問題で悩んでたので助かりましたあああああ!!<br><br><br><br>babyloos.net