Ebben a részben meg fogjuk érteni, hogyan használható a PostgreSQL ADD COLUMN parancs egy vagy több oszlop hozzáadásához az aktuális adatbázistáblához.
PostgreSQL ADD COLUMN parancs
Használjuk a táblázat módosítása oszlop hozzáadása, parancs az új oszlop hozzáadásához egy meglévő táblához.
Szintaxis
A szintaxis a Módosítsa az oszlop hozzáadása parancsot lent van megadva:
ALTER TABLE table_name ADD COLUMN new_column_name data_type;
A fenti szintaxisban a következő paramétereink vannak:
Paraméter | Leírás |
---|---|
Alter táblázat | Ez egy záradék, amely a tábla definíciójának módosítására szolgál. |
Táblázat_neve | A tábla nevének leírására szolgál, ahol az ALTER TABLE záradék után új oszlopot kell hozzáadnunk. |
New_cloumn _name | Az OSZLOP HOZZÁADÁSA feltétel után az oszlopnév megadására szolgál olyan attribútumokkal együtt, mint az alapértelmezett érték, adattípus és így tovább. |
Megjegyzés: Amikor új oszlopot adunk a táblához, a PostgreSQL feljavítja azt a tábla végén, mivel a PostgreSQL-nek nincs más választása az új oszlop helyének meghatározására a táblázatban.
Adjon hozzá több oszlopot az alter table paranccsal
Szintaxis több oszlop hozzáadásához az alter table paranccsal:
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;
Példák a PostgreSQL ADD COLUMN-ra
Az oszlopok hozzáadásának jobb megértése érdekében az alábbi folyamatot követjük:
Először is létrehozunk egy új táblát a névvel Személyek két oszloppal Person_id és First_name az alábbi parancs segítségével:
CREATE TABLE Persons ( Person_ID Serial primary key, Person_Name varchar not Null );
Kimenet
metódus felülbírálása java-ban
A fenti lekérdezés végrehajtása után az alábbi üzenetet kapjuk ablak , amely azt mondja, hogy a Személyek táblázat készült:
Ezt követően hozzáadjuk a Cím oszlopba a Személyek táblázat az alábbi parancs segítségével:
ALTER TABLE Persons ADD COLUMN Address VARCHAR;
Kimenet
A fenti lekérdezés végrehajtása után az alábbi üzenet ablakot kapjuk:
És az alábbi parancs segít nekünk hozzáadni a Város és telefonszám oszlopokat a Személyek asztal:
ALTER TABLE Persons ADD COLUMN City VARCHAR, ADD COLUMN Phone_no VARCHAR;
Kimenet
A fenti lekérdezés végrehajtása után az alábbi üzenet ablakot kapjuk:
Ha látni akarjuk a Személyek táblázat szerkezete a psql , az alábbi parancsot fogjuk használni:
javatpoint=# d Persons
A kimenet a Személyek táblázat szerkezete
Ahogy a fenti képen is láthatjuk, megvan a címet, várost és telefonszámot a Személyek tábla oszloplistájának végéhez hozzáadott oszlopok.
Oszlop hozzáadása a NOT NULL megkötéssel
Ebben egy olyan oszlopot adunk hozzá, amely nem nulla megkötésekkel rendelkezik egy bizonyos adatokat tartalmazó táblázathoz.
Először is beszúrunk néhány adatot a Személyek táblázat az Insert paranccsal:
INSERT INTO Persons (Person_name) VALUES ('John'), ('Emily'), ('Mike');
Kimenet
Láthatjuk, hogy a három sor bekerült a Személyek táblázat az alábbi üzenetablakban.
Most tegyük fel, hogy hozzá akartuk adni a Email oszlopba a Személyek táblázatot, és ehhez a következő parancsot használjuk:
ALTER TABLE Persons ADD COLUMN Email VARCHAR NOT NULL;
Kimenet
Miután végrehajtottuk a fenti parancsot, egy hibát fogunk kapni, amely ezt mondja
az „e-mail” oszlop null értékeket tartalmaz
A fenti hiba azért történt, mert a Email oszlop tartalmazza a NEM NULLA kényszer.
szoftver tesztelés és típusok
A PostgreSQL-ben az új oszlop a NULLA értéket az oszlopok hozzáadásakor, ami szintén megzavarja a NEM NULLA kényszer.
A fenti hiba megoldásához az alábbi lépéseket kell követnünk:
olyan weboldal, mint a coomeet
1. lépés
Először is hozzá kell adnunk az oszlopot a nélkül NEM NULLA megszorítást, és ehhez a következő parancsot fogjuk használni:
ALTER TABLE Persons ADD COLUMN Email VARCHAR;
Kimenet
Amint az alábbi üzenetablakban láthatjuk, hogy Email oszlop volt tette hozzá ba,-be Személyek asztal:
2. lépés
Most frissítjük az E-mail oszlop értékeit.
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;
Kimenet
Amint az alábbi üzenetablakban láthatjuk, hogy Email oszlop értékei voltak frissítve ba,-be Személyek asztal:
Ha ellenőrizni akarjuk, hogy az értékek frissültek-e vagy sem a Személyek táblázatot fogjuk használni Válassza ki parancs:
Select * From Persons;
Kimenet
A fenti lekérdezés kimenete a következő:
3. lépés
Az Email oszlop értékének frissítése után beállítjuk a NEM NULLA megkötés a Email oszlopba a Személyek táblázatot a következő paranccsal:
ALTER TABLE Persons ALTER COLUMN Email SET NOT NULL;
Kimenet
A fenti parancs végrehajtása után az alábbi üzenet ablakot kapjuk: