Ajuda com PostgreSQL

5 respostas
S

Galera, como eu faço pra importar um arquivo cheio de instruções de insert para o banco?

Eu tentei com o:

COPY <tabela> FROM <arquivo>;

Porém estou tendo este erro:

ERROR: invalid input syntax for integer:

Mas se eu pego a linha em si e rodo ela no pgAdmin ele adiciona normalmente.
Alguém pode me dar uma ajuda?

5 Respostas

P

Esse arquivo é um .sql?, faça um teste com essa extensão e tente rodar novamente.

S

sim, ta em .sql =/

R

Boa noite,

Você usou o pg_dump? Se usou, tente importar pelo pg_restore. Uma coisa que eu enrosquei muito também foi na codificação do texto do arquivo .sql, meu banco só estava aceitando LATIN1 e o arquivo era UTF-8, gerava muitos erros desse tipo, além de outros com os caracteres de controle. Se for este o problema, basta abrir o arquivo em um editor de texto e salvá-lo com a codificação correta.

[]'s

S

Como eu faço para saber em qual codificação está o meu banco?
Pq eu gero este arquivo em txt em Java, apartir de um outro arquivo nao formatado de dados, no java eu crio as linhas de insert e as salvo em um txt(temp), ainda no java eu executo o comando que falei(COPY FROM ;). Porém em java eu posso dizer em qual codificação eu quero fazer, pode funcionar.

E é impossivel abrir no txt para fazer novamente, pq eu preciso que isso seja algo automatico e meu txt ta pesando quase 600mb hehe.
Ps: isso são os dados de 1 mês =/

R

Hum, aí complicou. Sei que é possível mudar através da linha de comando, mas sinceramente não me lembro (há um ano sem Windows por aqui).
Dê uma procurada nos comandos /u, /c, algo assim, é executado pelo cmd.
Apenas como curiosidade, este arquivo com dados não formatados, viria de alguma outra base de dados?

Criado 13 de maio de 2008
Ultima resposta 13 de mai. de 2008
Respostas 5
Participantes 3