2

すべてのデータを削除し、AUTOMATIC_INCREMENT を値 0 にリセットして、クリーンなデータベースを使用できるようにします。上記を実行できるようにする切り捨て関数が見つかりましたが、このエラーがスローされます....外部キー制約で参照されているテーブルを切り捨てることはできません

(`film`.`reviewed`, CONSTRAINT `reviewed_ibfk_1` FOREIGN KEY (`movie_id`) REFERENCES `film`.`films` (`movie_id`))

これは、 FOREIGN KEY を削除する必要があるということですか?

4

2 に答える 2

2

はい、外部キー制約のあるテーブルを TRUNCATE することはできません

ドキュメントに従って:-

テーブルを参照する他のテーブルからの FOREIGN KEY 制約がある場合、 InnoDB テーブルのTRUNCATE TABLEは失敗します。同じテーブルの列間の外部キー制約は許可されています。

このようにする代替手段がありますが:-

SET FOREIGN_KEY_CHECKS=0;
TRUNCATE table1;
SET FOREIGN_KEY_CHECKS=1;
于 2013-10-11T18:41:09.103 に答える