0
이 쿼리를 계단식으로 배열하고 싶습니다.이 쿼리를 계단식으로 배열하십시오.
SELECT 'TRUNCATE TABLE ' || tablename || ';' FROM pg_tables WHERE tableowner='XXX';
모든 테이블을 소유자 "xxx"가 잘린 (이 작동합니다)하지만 나는 또한 캐스케이드 싶습니다. 나는 그것을 계단식으로 만들 수 있을까?
이 쿼리를 계단식으로 배열하고 싶습니다.이 쿼리를 계단식으로 배열하십시오.
SELECT 'TRUNCATE TABLE ' || tablename || ';' FROM pg_tables WHERE tableowner='XXX';
모든 테이블을 소유자 "xxx"가 잘린 (이 작동합니다)하지만 나는 또한 캐스케이드 싶습니다. 나는 그것을 계단식으로 만들 수 있을까?
@clemens commented과 같은 keyword CASCADE
을 추가하십시오.
또한 SQL 삽입 및 기타 오류를 피하려면 tablename
을 이스케이프하십시오. 가장 우아하게 format()
:
SELECT format('TRUNCATE TABLE %I CASCADE;', tablename)
FROM pg_tables WHERE tableowner = 'XXX';
'선택'TRUNCATE TABLE '을 사용해 보셨습니까? tablename || '캐스케이드' FROM pg_tables where tableowner = 'XXX'; '? – clemens