Como alterar o tipo de dados de uma coluna em uma tabela PostgreSQL?


102

Inserir o seguinte comando em um terminal interativo PostgreSQL resulta em um erro:

ALTER TABLE tbl_name ALTER COLUMN col_name varchar (11);

Qual é o comando correto para alterar o tipo de dados de uma coluna?

Respostas:


169

Consulte a documentação aqui: http://www.postgresql.org/docs/current/interactive/sql-altertable.html

ALTER TABLE tbl_name ALTER COLUMN col_name TYPE varchar (11);

28
Para alguns outros casos, pode ser necessário especificar a forma de lançar comoALTER TABLE tbl_name ALTER COLUMN col_name TYPE integer USING col_name::integer;
Nobu

3
@Nobu por que temos que fazer isso some casese quais são esses casos?
Darth.Vader

2
@ Darth.Vader você pode precisar fazer isso quando já houver dados existentes na coluna que não podem ser convertidos automaticamente.
Jonathan Porter
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.