Для этого вы можете использовать anonymous code block
.
Внимание : Мы говорим о DROP TABLE
утверждениях, и они действительно подлые, если вы допустили ошибку;) Опция CASCADE
также удаляет зависимые объекты. Используйте это с осторожностью!
DO $$
DECLARE
row record;
BEGIN
FOR row IN SELECT * FROM pg_tables WHERE schemaname = 'mySchema'
LOOP
EXECUTE 'DROP TABLE mySchema.' || quote_ident(row.tablename) || ' CASCADE';
END LOOP;
END;
$$;
Если вы хотите удалить все в своей схеме, включая обертки, последовательности и т. Д. c., Рассмотрите возможность удаления самой схемы и ее повторного создания:
DROP SCHEMA mySchema CASCADE;
CREATE SCHEMA mySchema;