Du kan använda ett anonymous code block
för det.
Obs :Vi har att göra med DROP TABLE
påståenden, och de är verkligen elaka om du gör ett misstag;) CASCADE
alternativet släpper de beroende objekten också. Använd den med försiktighet!
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;
$$;
Om du vill ta bort allt i ditt schema, inklusive omslag, sekvenser etc., överväg att ta bort själva schemat och skapa det igen:
DROP SCHEMA mySchema CASCADE;
CREATE SCHEMA mySchema;