Em 09-08-2011 17:35, Marcos Oliveira escreveu:
> Outro detalhe importante: Não consigo fazer um dump da base.
>
E nem vai conseguir. O pg_dump[all] faz consultas na pg_attribute.

> Ao executar a consulta
> select count(*) FROM pg_attribute WHERE attname = '' AND attrelid = 167017;
>
> obtenho 0 resultados. É isto mesmo que deveria ocorrer?
>
Não. Você informou que a consulta

SELECT attname, atttypid FROM pg_attribute WHERE attrelid = 167017;

retornava valores do campo attname que era vazio ('')! O objetivo é remover as 
tuplas cujo atributo attname é vazio ou nulo. Uma das consultas retornará dados:

SELECT attname, atttypid FROM pg_attribute WHERE attname = '' AND attrelid = 
167017;
ou
SELECT attname, atttypid FROM pg_attribute WHERE attname IS NULL AND attrelid 
= 167017;

Baseado nessas consultas monte uma cláusula WHERE para comando DELETE.


-- 
   Euler Taveira de Oliveira - Timbira       http://www.timbira.com.br/
   PostgreSQL: Consultoria, Desenvolvimento, Suporte 24x7 e Treinamento
_______________________________________________
pgbr-geral mailing list
[email protected]
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral

Responder a