728x90
반응형
해당 쿼리는 매우 위험하므로 주의해서 사용해야 한다. curruent_schemas() 함수로 가져온 모든 테이블 명을 프로시저에서 반복문을 이용해 drop table if exists 쿼리로 삭제한다.
DO $$ DECLARE
r RECORD;
BEGIN
-- if the schema you operate on is not "current", you will want to
-- replace current_schema() in query with 'schematodeletetablesfrom'
-- *and* update the generate 'DROP...' accordingly.
FOR r IN (SELECT tablename FROM pg_tables WHERE schemaname = current_schema()) LOOP
EXECUTE 'DROP TABLE IF EXISTS ' || quote_ident(r.tablename) || ' CASCADE';
END LOOP;
END $$;
728x90
반응형
'Database > PostgreSQL' 카테고리의 다른 글
PostgreSQL 세션 정보 확인, 종료 (0) | 2024.03.19 |
---|---|
PostgreSQL docker-compose에서 init sql 실행하기 (0) | 2024.03.18 |
[PostgreSQL] 월별로 DB 파티셔닝 예제 (0) | 2023.06.12 |