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.