Acho que você não conseguirá usar
pg_dump
para essa tabela temporária. O problema é que tabelas temporárias só existem dentro da sessão em que elas foram criados
:Então você criaria a tabela temporária em uma sessão, mas
pg_dump
estaria usando uma sessão diferente que não possui sua tabela temporária. No entanto,
COPY
Deveria trabalhar:mas você estará copiando os dados para a saída padrão ou para um arquivo no servidor de banco de dados (que requer acesso de superusuário):
Portanto, usar COPY para despejar a tabela temporária diretamente em um arquivo pode não ser uma opção. Você pode COPIAR para a saída padrão, mas o quão bem isso funcionará depende de como você está acessando o banco de dados.
Você pode ter mais sorte se não usar tabelas temporárias. Você teria, é claro, que gerenciar nomes de tabela exclusivos para evitar conflitos com outras sessões e teria que tomar cuidado para garantir que suas tabelas temporárias não temporárias fossem descartadas quando você terminasse com elas.