rake db:fixtures:loadによる外部制約の無視 (Rails 2.3.2)
foreign keyを設定したテーブルへfixturesを使って大量のデータをテーブルに投入中、外部制約違反の誤ったデータがなぜかimportされていました。
外部制約が正しく設定されていないのかと思いきや、mySQLのログを確認すると勝手に「SET FOREIGN_KEY_CHECKS = 0」を実行して、外部制約をしっかり無視している模様…。
おいおい。。。
13 Query SET FOREIGN_KEY_CHECKS = 0 13 Query BEGIN 13 Query DELETE FROM `hoge_table` 13 Query SHOW FIELDS FROM `hoge_table` 13 Query SHOW FIELDS FROM `hoge_table` 〜insert文〜 13 Query COMMIT 13 Query SET FOREIGN_KEY_CHECKS = 1