Wie ändere ich den Spaltenstandardwert in PostgreSQL?

126

Wie ändere ich den Spaltenstandardwert in PostgreSQL?

Ich habe es versucht:

ALTER TABLE ONLY users ALTER COLUMN lang DEFAULT 'en_GB';

Aber es gab mir einen Fehler:

ERROR: syntax error at or near "DEFAULT"
Silbernes Licht
quelle

Antworten:

243

'SET' ist vergessen

ALTER TABLE ONLY users ALTER COLUMN lang SET DEFAULT 'en_GB';
Silbernes Licht
quelle
13
Wofür ONLYwird vor dem Namen der Tabelle verwendet?
Nik Sumeiko
20
"Wenn NUR vor dem Tabellennamen angegeben wird, wird nur diese Tabelle geändert. Wenn NUR nicht angegeben wird, werden die Tabelle und alle ihre Nachkommen-Tabellen (falls vorhanden) geändert" postgresql.org/docs/9.3/static/sql-altertable. html
Yodan Tauber
80

Wenn Sie die Standardwertbeschränkung entfernen möchten, haben Sie folgende Möglichkeiten:

ALTER TABLE <table> ALTER COLUMN <column> DROP DEFAULT;
Salvador Dali
quelle