【MySQL】 データベース内のテーブルを全てTRUNCATE
たまにありますよね。 phpMyAdminとか使えば簡単かもしれないんですけど データベース内に数百というテーブルが存在していて、これ全部Truncateかけたいんだけど。。。
show tablesでテーブルリスト作ってそこにtruncateを入れて動かす。 そんなんでもいいんですが、1ライナーでさくっと消してやりましょう。
mysql -u[user] -p[password] [database name] -N -e 'show tables' | xargs -IARG mysql -u[user] -p[password] -e 'truncate table ARG' [database name]
上に書いてある通りです。 show tablesで出てくる各テーブルに対してtruncateつけて実行しているだけです。 これで指定したデータベース内は全てtruncateされます。
あぁ、すっきり。