🐬

【MySql 8】ターミナルからテーブルのデータを全件削除する

2022/05/18に公開

Docker環境接続方法

// Docker環境へ接続 補足) db:service名
docker-compose exec db bash

MySQLに接続してデータを全件削除

// mysql に接続 補足)<user名>:DBのuser名
mysql -u <user名> -p

// パスワードを求められるのでdbのパスワードを入力

// 使用するDBを選択
show databases;
use <DB名>;

// 選択したDBに存在する特定のテーブルを全件削除
truncate table <Table名>;

以下のようなエラーが表示された場合

cannot truncate a table referenced in a foreign key constraint (`<Table名>`.`<Table名>`, CONSTRAINT `<Table名>_<column名>_foreign`)
mysql> truncate table <Table名>;

外部キー制約をなしにする

// 外部キー制約をfalseにする
set foreign_key_checks = 0;

// 再度テーブルのデータを全件削除
truncate table <Table名>;

// 外部キー制約をtrueに戻す
set foreign_key_checks = 1;

Discussion