Czy to poprawna składnia postgresql, aby dodać kolumnę do tabeli z domyślną wartością false
ALTER TABLE users
ADD "priv_user" BIT
ALTER priv_user SET DEFAULT '0'
Dzięki!
sql
postgresql
1252748
źródło
źródło
boolean
kolumnę?Odpowiedzi:
możesz również bezpośrednio określić NOT NULL
AKTUALIZACJA : poniższe jest prawdziwe tylko dla wersji przed postgresql 11.
Jak wspomniał Craig na wypełnionych tabelach, bardziej efektywne jest podzielenie go na kroki:
źródło
ALTER TABLE users ADD COLUMN priv_user BOOLEAN;
, a potemUPDATE users SET priv_user = 'f';
i na koniec, jeśli zajdzie taka potrzebaALTER TABLE users ALTER COLUMN priv_user SET NOT NULL;
.Jeśli chcesz mieć rzeczywistą kolumnę logiczną:
źródło
Tylko na przyszłość, jeśli masz już kolumnę logiczną i chcesz po prostu dodać domyślną, wykonaj:
źródło
Jeśli używasz postgresql, musisz użyć typu BOOLEAN małymi literami jako wartości logicznej.
ALTER TABLE użytkownicy ADD "priv_user" boolean DEFAULT false;
źródło
W psql zmieniaj składnię zapytań kolumnowych w ten sposób
wartość logiczna (prawda-fałsz) zapisz w DB jak wartość (tf) .
źródło