Šajā sadaļā mēs sapratīsim, kā komanda PostgreSQL ADD COLUMN tiek izmantota, lai pašreizējai datu bāzes tabulai pievienotu vienu vai vairākas kolonnas.
PostgreSQL komanda ADD COLUMN
Mēs izmantosim mainīt tabulas pievienošanas kolonnu, komanda jaunas kolonnas pievienošanai esošai tabulai.
Sintakse
Sintakse Mainiet komandu pievienot kolonnu ir norādīts zemāk:
atribūta kļūda python
ALTER TABLE table_name ADD COLUMN new_column_name data_type;
Iepriekš minētajā sintaksē mums ir šādi parametri:
Parametrs | Apraksts |
---|---|
Mainīt galdu | Tā ir klauzula, ko izmanto, lai mainītu tabulas definīciju. |
Tabulas_nosaukums | To izmanto, lai aprakstītu tabulas nosaukumu, kur mums ir jāpievieno jauna kolonna pēc klauzulas ALTER TABLE. |
New_cloumn _name | To izmanto, lai norādītu kolonnas nosaukumu ar tā atribūtu, piemēram, noklusējuma vērtību, datu tipu un tā tālāk, pēc nosacījuma PIEVIENOT SLEJU. |
Piezīme. Kad mēs pievienojam tabulai jaunu kolonnu, PostgreSQL uzlabo to tabulas beigās, jo PostgreSQL nav citas izvēles, lai definētu jaunās kolonnas vietu tabulā.
Pievienojiet vairākas kolonnas, izmantojot komandu alter table
Sintakse vairāku kolonnu pievienošana, izmantojot komandu alter table:
ALTER TABLE table_name ADD COLUMN new_column_name_1 data_type constraint, ADD COLUMN new_column_name_2 data_type constraint, ::: ::: ADD COLUMN new_column_name_N data_type constraint;
PostgreSQL ADD COLUMN piemēri
Lai labāk izprastu kolonnu pievienošanu, mēs izpildīsim tālāk norādīto procesu.
Pirmkārt, mēs izveidosim jaunu tabulu ar nosaukumu kā Personas ar divām kolonnām Personas_id un Vārds ar tālāk norādītās komandas palīdzību:
CREATE TABLE Persons ( Person_ID Serial primary key, Person_Name varchar not Null );
Izvade
Pēc iepriekš minētā vaicājuma izpildes mēs saņemsim tālāk norādīto ziņojumu logs , kurā teikts, ka Personas tabula ir izveidota:
Pēc tam mēs pievienosim Adrese kolonnu uz Personas tabula ar tālāk norādītās komandas palīdzību:
ALTER TABLE Persons ADD COLUMN Address VARCHAR;
Izvade
Pēc iepriekš minētā vaicājuma izpildes mēs saņemsim zemāk redzamo ziņojuma logu:
ceļojums, bet
Un tālāk esošā komanda palīdzēs mums pievienot Pilsēta un tālruņa nr kolonnas uz Personas tabula:
ALTER TABLE Persons ADD COLUMN City VARCHAR, ADD COLUMN Phone_no VARCHAR;
Izvade
Pēc iepriekš minētā vaicājuma izpildes mēs saņemsim zemāk redzamo ziņojuma logu:
Ja mēs vēlamies redzēt Personas tabulas struktūra psql , mēs izmantosim tālāk norādīto komandu:
javatpoint=# d Persons
Izvade no Personas tabulas struktūra
Kā redzams iepriekš redzamajā attēlā, mums tā ir adrese, pilsēta un tālruņa_nr kolonnas, kas pievienotas tabulas Personas kolonnu saraksta beigās.
Kolonnas pievienošana ar ierobežojumu NOT NULL
Šajā konkrētai tabulai, kurā ir daži dati, mēs pievienosim kolonnu ar ierobežojumiem, kas nav nulles.
Pirmkārt, mēs ievietosim dažus datus Personas tabula, izmantojot komandu Insert:
INSERT INTO Persons (Person_name) VALUES ('John'), ('Emily'), ('Mike');
Izvade
numpy dot produkts
Mēs redzam, ka trīs rindas ir ievietotas Personas tabulā zemāk esošajā ziņojumu logā.
Tagad pieņemsim, ka vēlējāmies pievienot E-pasts kolonnu uz Personas tabulu, un šim nolūkam mēs izmantojam šādu komandu:
ALTER TABLE Persons ADD COLUMN Email VARCHAR NOT NULL;
Izvade
Kad mēs izpildīsim iepriekš minēto komandu, mēs saņemsim vienu kļūdu, kas to saka
kolonnā 'e-pasts' ir nulles vērtības
Iepriekš minētā kļūda radās, jo E-pasts kolonna satur NAV NULL ierobežojums.
Programmā PostgreSQL jaunā kolonna aizņem NULL vērtību, pievienojot kolonnas, kas arī traucē NAV NULL ierobežojums.
Lai novērstu iepriekš minēto kļūdu, mums ir jāveic tālāk norādītās darbības.
1. darbība
java virknes indekss
Pirmkārt, mums jāpievieno kolonna bez NAV NULL ierobežojumu, un šim nolūkam mēs izmantosim šādu komandu:
ALTER TABLE Persons ADD COLUMN Email VARCHAR;
Izvade
Kā redzam zemāk esošajā ziņojuma logā, tas E-pasts kolonna ir bijusi pievienots iekšā Personas tabula:
statisks c
2. darbība
Tagad mēs atjaunināsim slejas E-pasts vērtības.
UPDATE Persons SET Email = '[email protected]' WHERE Person_id = 1; UPDATE Persons SET Email = '[email protected]' WHERE Person_id = 2; UPDATE Persons SET Email = '[email protected]' WHERE Person_id = 3;
Izvade
Kā redzam zemāk esošajā ziņojuma logā, tas E-pasts kolonnu vērtības ir bijušas atjaunināts iekšā Personas tabula:
Ja mēs vēlamies pārbaudīt, vai vērtības ir atjauninātas vai nav Personas tabulu, mēs izmantosim Izvēlieties komanda:
Select * From Persons;
Izvade
Iepriekš minētā vaicājuma izvade ir šāda:
3. darbība
Pēc kolonnas E-pasts vērtības atjaunināšanas mēs iestatīsim NAV NULL ierobežojums E-pasts kolonnā Personas tabulu, izmantojot šādu komandu:
ALTER TABLE Persons ALTER COLUMN Email SET NOT NULL;
Izvade
Pēc iepriekš minētās komandas izpildes mēs saņemsim zemāk redzamo ziņojuma logu: