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?

Oto Shavadze
źródło
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
Federico Razzoli
źródło
Czy istnieje sposób na zastosowanie wartości domyślnej dla komórek, które mają jednocześnie wartość null?
Eugen Konkov