コマンドラインから操作して PostgreSQL 内のすべてのテーブルを削除するにはどうすればよいですか?
データベース自体を削除したいのではなく、すべてのテーブルとそこに含まれるすべてのデータを削除したいのです。
ベストアンサー1
すべてのテーブルが単一のスキーマ内にある場合、このアプローチは機能します(以下のコードでは、スキーマの名前が であると想定していますpublic
)。
DROP SCHEMA public CASCADE;
CREATE SCHEMA public;
PostgreSQL 9.3 以降を使用している場合は、デフォルトの権限を復元する必要がある場合もあります。
GRANT ALL ON SCHEMA public TO postgres;
GRANT ALL ON SCHEMA public TO public;