Escolha uma Página

O postgres é um banco de dados relacional sendo assim o TRUNCATE não pode ser executado em uma tabela que seja referenciada por outra tabela através de uma chave estrangeira, então antes de executar o TRUNCATE você precisa desabilitar as TRIGGERS

-- desativa as triggers
UPDATE "pg_class" SET "reltriggers" = 0 WHERE "relname" = 'tabela';
 
-- limpa a tabela
TRUNCATE tabela
 
-- reativa as triggers
UPDATE pg_class SET reltriggers = (SELECT COUNT(*) FROM pg_trigger WHERE pg_class.oid = tgrelid) WHERE relname = 'tabela';