• 0
Sign in to follow this  
Claudio Biasi

Erro ao usar o comando COPY no psql

Question

Olá. Usei o comando COPY do psql e obtive uma mensagem de erro:

postgres=# copy weather from 'C:\postgres\weather.txt';

ERROR:  missing data for column "temp_lo"
CONTEXT:  COPY weather, line 1: "INSERT INTO weather (city, temp_lo, temp_hi, prcp, date)"

O arquivo weather.txt é esse:

INSERT INTO weather (city, temp_lo, temp_hi, prcp, date)
    VALUES ('Washington', 40, 60, 0.3, '1997-10-15');
INSERT INTO weather (city, temp_lo, temp_hi, prcp, date)
    VALUES ('Florida', 45, 65, 0.6, '1995-01-30');

A tabela foi criada anteriormente conforme descrito no tutorial (https://www.postgresql.org/docs/10/static/tutorial-table.html) por meio do comando:

CREATE TABLE weather (
    city            varchar(80),
    temp_lo         int,           -- low temperature
    temp_hi         int,           -- high temperature
    prcp            real,          -- precipitation
    date            date
);
Alguém poderia me dar uma dica do que pode estar errado?

Obrigado.

Claudio.

 

 

Share this post


Link to post
Share on other sites

2 answers to this question

Recommended Posts

  • 0

Comecei a trabalhar recentemente em um projeto em postgre. Onde tive que fazer exatamente esses imports. Percebi que ele é bem sensível aos detalhes da sintaxe do comando.

Certifique que a quantidade de colunas do arquivo é igual ao da tabela e se estão nas mesmas posições. Caso seu arquivo texto possua cabeçalho é necessário especificar uma cláusula no comando COPY o mesmo se aplica para separadores.

Caso esteja tudo certo, verifique a possibilidade de importar um csv.

Share this post


Link to post
Share on other sites
  • 0

Tente usar o WITH DELIMITERS ',' . Da maneira q colocou ele entende q seu arquivo está com apenas um campo. Além disso, seu arquivo não precisa ter insert, apenas as linhas a serem inseridas.

Algo assim:

'Washington', 40, 60, 0.3, '1997-10-15'
'Florida', 45, 65, 0.6, '1995-01-30'

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Sign in to follow this