Solucionado (ver solução)
Solucionado
(ver solução)
4
respostas

Varchar para integer

Ola, estou tentando transformar um varchar em integer com o seguinte codigo:

ALTER TABLE torres.criciuma ALTER COLUMN cod_logradouro TYPE integer USING (trim(cod_logradouro)::integer);

porém recebo o seguinte erro: ERROR: invalid input syntax for type integer: "" SQL state: 22P02

Poderiam me ajuduar?

4 respostas

Guilherme usa o comando Modify. A sua sintaxe deve ficar assim.

ALTER TABLE torres.criciuma MODIFY cod_logradouro INT;

O único problema pode acontecer caso você já possua informação na tabela, se for somente números ok, mas se for carácteres pode ser que você tenha que realizar um dele desse campo e refaze-lo em seguida. Espero ter ajudado.

Não consigo usar o comando modify pelo postgres, diz que não existe esse comando

solução!

Entendi Guilherme, eu não me liguei que você estava fazendo pelo Postgres, achei que fosse no Oracle (sql developer). Tenta usar essa syntax.

ALTER TABLE torres.criciuma ALTER COLUMN cod_logradouro TYPE interger;

o problema era na importação do excel que deixava os campos vazio como "" e não como null, mas obrigado pela ajuda