> recebi alguns arquivos .csv gerados em linux e preciso transforma-los em > tabelas sql para gerar consultas via i3geo/mapserver na minha maquina que > está usando windows. > Fiz algo simples. Eu exportei os .csv pra .dbf e tentei fazer um join com > meu shape no sig(algo que já fiz milhoes de vezes) mas todos os valores da > minha tabelado shape ficam com os valores pós-join da outra tabela nulos. > Exportei, reimportei,reexportei pra tds os formatos possíveis e nada. > Depois tentei gerar o .sql direto no bco depois de criar a tabelas e suas > respectivas colunas através de COPY table FROM 'caminho do arquivo csv'; e > nada.
Não entendi. Você tentou importar um CSV pelo COPY e não deu certo? A tabela de destino ficou vazia? Houve alguma mensagem de erro? > Já tentei um conversor de dbf pra sql gratuito mas não consigo encontrar > nenhum. Não há necessidade de passar pelo DBF, você pode importar do CSV direto pelo psql. A sintaxe para COPY (na versão 9.1) está em: http://www.postgresql.org/docs/9.1/static/sql-copy.html Qual o delimitador do CSV? Se os fins de linha estão em Linux e você usa Windows, você pode usar o Notepad++ para converter para fins de linha Windows. Aí você tenta: COPY tabela FROM 'arquivo' WITH FORMAT csv DELIMITER 'delimitador'; Onde 'arquivo' deve ser o caminho completo para o local do arquivo e 'delimitador' deve ser o utilizado no seu CSV (vírgula, ponto-e-vírgula, tab, etc). Note que o arquivo deve ser acessível pelo usuário que roda o PostgreSQL (normalmente postgres). Note também que o CSV deve ter exatamente as mesmas colunas, na sequencia da tabela, ou então especifique as colunas conforme a documentação. []s Flavio Gurgel _______________________________________________ pgbr-geral mailing list [email protected] https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
