PostgreSQL-i käsk ALTER TABLE võimaldab teil and­me­ba­asi tabelite veerge lisada või muuta.

Mis on PostgreSQL ALTER TABLE?

PostgreSQL-i käsku ALTER TABLE saab kasutada and­me­ba­asi tabelite muut­miseks. Selle käsu abil saate vajaduse korral tabelisse veerge lisada, neid eemaldada või muuta. Seda saab kasutada ka and­me­ba­asi hal­dus­süs­tee­mis tabeli piiran­gute keh­tes­ta­miseks või tü­his­ta­miseks. Selle käsu ka­su­ta­miseks tuleb see kom­bi­nee­rida konk­reetse toi­min­guga.

Milline on numbri ALTER TABLE kir­ju­ta­mis­viis?

Et paremini mõista, kuidas ALTER TABLE kasutada, vaatame kõi­ge­pealt selle süntaksit:

ALTER TABLE table_name action;
postgresql

Pärast käsku tuleb märkida muudetava tabeli nimi ja valida soovitud muu­da­tuste jaoks sobiv toiming.

Tip

Uue tabeli loomiseks võid kasutada PostgreSQL-is käsku CREATE TABLE.

PostgreSQL ALTER TABLE näited

Allpool näitame lihtsa näite abil, kuidas ALTER TABLE töötab. Kasutame tabelit nimega customers, millel on kolm veergu ja kolm rida:

id nimi linn
1 Lee Nort­hamp­ton
2 Johnson Edinburgh
3 Smith Brighton

Me saame seda tabelit mitmel viisil kohandada, kasutades ALTER TABLE.

Veeru lisamine PostgreSQL ADD COLUMN

Uue veeru li­sa­miseks kasuta käsku ALTER TABLE koos PostgreSQLi käskuga ADD COLUMN. See käsk nõuab kahte pa­ra­meet­rit: uue veeru nime ja selle and­me­tüübi. Süntaks on järgmine:

ALTER TABLE table_name ADD COLUMN column_name data_type;
postgresql

Näiteks võid tabelisse customers aadressi veeru lisada järg­mi­selt:

ALTER TABLE customers ADD COLUMN address VARCHAR(255);
postgresql

Tabel näeb praegu välja järgmine:

id nimi linn aadress
1 Lee Nort­hamp­ton NULL
2 Johnson Edinburgh NULL
3 Smith Brighton NULL

Veeru eemal­da­mine, milles on DROP COLUMN

Veeru tabelist eemal­da­miseks kasuta ALTER TABLE koos toi­min­guga DROP COLUMN. Siin tuleb pa­ra­meet­rina lisada ainult veeru nimi:

ALTER TABLE table_name DROP COLUMN column_name;
postgresql

city veeru eemal­da­miseks kasuta järgmist koodi:

ALTER TABLE customers DROP COLUMN city;
postgresql

Selle tulemusel jääb tabelisse alles kolm veergu:

id nimi aadress
1 Lee NULL
2 Johnson NULL
3 Smith NULL

Veeru üm­ber­ni­me­ta­mine numbriga RENAME COLUMN

Samuti saate ole­mas­ole­vale veerule uue nime anda. See võib olla hea al­ter­na­tiiv veergude kus­tu­ta­misele ja uuesti li­sa­misele. RENAME COLUMN on vaja kasutada RENAME COLUMN süntaksit:

ALTER TABLE table_name RENAME COLUMN old_column_name TO new_column_name;
postgresql

Näiteks võid muuta name veeru customer_name veeruks:

ALTER TABLE customers RENAME COLUMN name TO customer_name;
postgresql

Tabel näeb praegu välja järgmine:

id kliendi_nimi aadress
1 Lee NULL
2 Johnson NULL
3 Smith NULL

Täien­da­vad PostgreSQL-toimingud ver­sioo­nile ALTER TABLE

Siin on veel mõned olulised toimingud, mida saad ALTER TABLE-ga teha:

Veeru and­me­tüübi muutmine:

ALTER TABLE table_name ALTER COLUMN column_name TYPE data_type;
postgresql

Veen­du­maks, et igal veerus oleval kirjel on väärtus:

ALTER TABLE table_name ALTER COLUMN column_name SET NOT NULL;
postgresql

Piiran­gute keh­tes­ta­mine, näiteks UNIQUE või PRIMARY KEY, kasutades ALTER TABLE koos ADD CONSTRAINT:

ALTER TABLE table_name ADD CONSTRAINT constraint_name constraint_definition;
postgresql
Go to Main Menu