[MySQL][Postgres]外部キーがあるテーブルをTRUNCATEする方法

概要

データベースで外部キーがあるテーブルをTRUNCATEしようとするとエラーとなってしまう。
例えば、MySQLの場合はCannot truncate a table referenced in a foreign key constraintとなり、TRUNCATEすることができない。

解決方法

一時的に外部キー制約を無効化することで、TRUNCATEすることができる。

MySQLの場合

set foreign_key_checks = 0;
truncate table 【テーブル名】;
set foreign_key_checks = 1;

Postgresの場合

truncate table 【テーブル名】 cascade;

【1つ新しい記事】

【1つ古い記事】

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です