Jak zmienić typ danych kolumny w tabeli PostgreSQL?

102

Wprowadzenie następującego polecenia do interaktywnego terminala PostgreSQL powoduje błąd:

ALTER TABLE tbl_name ALTER COLUMN col_name varchar (11);

Jakie jest prawidłowe polecenie zmiany typu danych w kolumnie?

kn3l
źródło

Odpowiedzi:

169

Zobacz dokumentację tutaj: http://www.postgresql.org/docs/current/interactive/sql-altertable.html

ALTER TABLE tbl_name ALTER COLUMN col_name TYPE varchar (11);
Derek Kromm
źródło
28
Dla niektórych innych przypadkach może być konieczne, aby określić drogę do obsady jakALTER TABLE tbl_name ALTER COLUMN col_name TYPE integer USING col_name::integer;
Nobu
3
@Nobu, dlaczego musimy to robić some casesi jakie to są przypadki?
Darth.Vader,
2
@ Darth.Vader może być konieczne zrobienie tego, gdy w kolumnie istnieją już dane, których nie można przesłać automatycznie.
Jonathan Porter