Zmień typ kolumny i ustaw wartość inną niż null


100

Jak zmienić typ kolumny, a także ustawić tę kolumnę not nullrazem?

Próbuję:

ALTER TABLE mytable ALTER COLUMN col TYPE character varying(15) SET NOT NULL

Zwraca to błąd.

Jaka jest prawidłowa składnia?


2
Hej, dlaczego nie spojrzeć na podręcznik: postgresql.org/docs/9.2/static/sql-altertable.html
Mechanical_meat

To jest razem (w jednym zapytaniu), czy nie można zrobić tych dwóch rzeczy?
Oto Shavadze

Odpowiedzi:


192

To powinno być poprawne:

ALTER TABLE mytable
    ALTER COLUMN col TYPE character varying(15),
    ALTER COLUMN col SET NOT NULL

Czy istnieje sposób na zastosowanie wartości domyślnej dla komórek, które mają jednocześnie wartość null?
Eugen Konkov
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.