PostgreSQL ALTER TABLE: Lisää ja nimeä sarake uudelleen
⚡ Älykäs yhteenveto
PostgreSQL ALTER TABLE muuttaa olemassa olevan taulukon rakennetta, jolloin voit lisätä tai poistaa sarakkeita, nimetä sarakkeen tai koko taulukon uudelleen, asettaa oletusarvot ja liittää tarkistusrajoitteita luomatta objektia uudelleen.

Mikä on ALTER TABLE -funktio? PostgreSQL?
ALTER TABLE komentoa käytetään muuttamaan rakenteen PostgreSQL taulukko. Se on komento, jota käytetään taulukon sarakkeiden tai itse taulukon nimen muuttamiseen ilman pudotusta.ping ja objektin uudelleenluominen.
Syntaksi
Tässä on syntaksi kohteelle PostgreSQL ALTER TABLE -komento:
ALTER TABLE table-name action;
Table-name-parametri on muutettavan taulukon nimi. Action-parametri on suoritettava toiminto, kuten sarakkeen nimen tai sarakkeen tietotyypin muuttaminen.
Tuotetiedot
ALTER TABLE -komento muuttaa olemassa olevan taulukon määritelmää. Se ottaa seuraavat alilomakkeet:
- LISÄÄ SARAKE: tämä käyttää samanlaista syntaksia kuin CREATE TABLE -komento uuden sarakkeen lisäämiseen taulukkoon.
- PUDOTA SARAKEpudotusta vartenping taulukon sarake. Myös sarakkeille asetetut rajoitteet ja indeksit poistetaan.
- SET/DOP OLETUS: käytetään sarakkeen oletusarvon asettamiseen tai poistamiseen. Muutos koskee vain seuraavia INSERT lausunnot.
- SET/DROP NOT NULL: muuttaa, salliiko sarake null-arvoja vai ei.
- SET TILASTOT: tilastojen keräämistavoitteen asettamiseen kullekin sarakkeelle ANALYZE-toiminnoissa.
- SET TALLENNUS: sarakkeen tallennustilan asettamiseen, joko rivillä olevaan taulukkoon tai lisätaulukkoon.
- SET ILMAN OIDEJA: käytetään taulukon vanhan OID-sarakkeen poistamiseen.
- NIMEÄ UUDELLEEN: taulukon tai sarakkeen nimen muuttaminen.
- LISÄÄ taulukko_rajoitus: käytetään uuden rajoitteen lisäämiseen taulukkoon. Se käyttää samaa syntaksia kuin Luo taulukko komento.
- PUDOTUSRAJOITUS: käytetään pudotukseenping taulukkorajoite.
- OMISTAJA: taulukon, sekvenssin, indeksin tai näkymän omistajan vaihtamiseen tietylle käyttäjälle.
- CLUSTER: taulukon merkitsemiseen tulevia klusteritoimintoja varten.
Sarakkeen muokkaaminen
Saraketta voidaan muokata useilla tavoilla. Tällaiset muutokset tehdään ALTER TABLE -komennolla. Käsitellään näitä alla.
Uuden sarakkeen lisääminen
Uuden sarakkeen lisääminen kohtaan a PostgreSQL taulukossa, ALTER TABLE -komentoa käytetään seuraavan syntaksin kanssa:
ALTER TABLE table-name ADD new-column-name column-definition;
Taulukon_nimi on muokattavan taulukon nimi. Uuden_sarakkeen_nimi on lisättävän uuden sarakkeen nimi. Sarakkeen_määritelmä on tietotyyppi uuden sarakkeen. Katso alla olevaa Kirja-taulukkoa:
Taulukossa on kaksi saraketta, id ja name. Meidän on lisättävä taulukkoon uusi sarake ja annettava sille nimi author. Suorita vain seuraava komento:
ALTER TABLE Book ADD author VARCHAR(50);
Yllä olevan komennon suorittamisen jälkeen Book-taulukko on nyt seuraava:
Uusi sarake lisättiin onnistuneesti.
Taulukon sarakkeen nimeäminen uudelleen
Voimme käyttää ALTER TABLE -komentoa muuttaaksesi sarakkeen nimeä. Tässä tapauksessa komentoa käytetään seuraavan syntaksin kanssa:
ALTER TABLE table-name RENAME COLUMN old-name TO new-name;
Taulukon-nimi on sen taulukon nimi, jonka sarake nimetään uudelleen. Vanha-nimi on sarakkeen nykyinen nimi ja uusi-nimi on sarakkeen uusi nimi. Tarkastellaan alla olevaa Book-taulukkoa:
Kirja:
Meidän on muutettava sarakkeen tekijän nimi muotoon book_author. Tässä on komento:
ALTER TABLE Book RENAME COLUMN author TO book_author;
Komennon suorittamisen jälkeen voimme tarkastella taulukon rakennetta:
Sarakkeen nimen muuttaminen onnistui.
Oletusarvon asettaminen sarakkeelle
Voimme asettaa sarakkeelle oletusarvon, jolloin oletusarvoa käytetään, vaikka et määrittäisikään arvoa kyseiselle sarakkeelle INSERT-toimintojen aikana. Tässä tapauksessa ALTER TABLE -komentoa voidaan käyttää seuraavalla syntaksilla:
ALTER TABLE table-name ALTER COLUMN column-name [SET DEFAULT value];
Taulukon nimi on sen taulukon nimi, jonka saraketta muokataan. Sarakkeen nimi on sen sarakkeen nimi, jonka oletusarvo asetetaan, ja arvo on sarakkeen oletusarvo. Tarkastellaan alla olevaa Book-taulukkoa:
Meidän on asetettava oletusarvo book_author -sarakkeelle. Voimme suorittaa seuraavan komennon:
ALTER TABLE Book ALTER COLUMN book_author SET DEFAULT 'Nicholas Samuel';
Lisätään nyt taulukkoon rivi:
INSERT INTO Book (id, name) VALUES (6, 'PostgreSQL for Beginners');
Huomaa, että lisäsimme arvot vain kahteen sarakkeeseen, id:hen ja name:hen. Book_author-sarakkeelle on kuitenkin käytetty oletusarvoa:
Tarkistusrajoituksen lisääminen
Tarkistusrajoitus auttaa vahvistamaan tietueita, jotka lisätään taulukkoon. Voimme tehdä tämän yhdistämällä ALTER TABLE -komennon ADD CHECK -käskyyn. Syntaksi:
ALTER TABLE table-name ADD CHECK expression;
Taulukon_nimi on muutettavan taulukon nimi ja lauseke on taulukon sarakkeelle asetettava rajoite. Muokataan Book-taulukon book_author-saraketta siten, että se hyväksyy vain arvot Nicholas ja Samuel:
ALTER TABLE Book ADD CHECK (book_author IN ('Nicholas', 'Samuel'));
Yritetään nyt lisätä jokin muu arvo kuin Nicholas tai Samuel Kirja-taulukon book_author -sarakkeeseen:
INSERT INTO Book VALUES(7, 'Best PostgreSQL Book', 'Gregory Bush');
Lauseke palauttaa seuraavan virheen:
Lisäys epäonnistui, koska rikoimme tarkistusrajoitusta.
Taulukon nimeäminen uudelleen
Tässä on syntaksi ALTER TABLE -komennolle taulukon uudelleennimeämiseksi:
ALTER TABLE table-name RENAME TO new-table-name;
Taulukon_nimi on taulukon nykyinen nimi ja uusi_taulukon_nimi on taulukolle annettava uusi nimi. Muutetaan esimerkiksi Book-taulukon nimi muotoon Books:
ALTER TABLE Book RENAME TO Books;
pgAdminin avulla
Tähän mennessä toiminnot on suoritettu SQL-komennosta. Katsotaanpa nyt, miten samat toiminnot voidaan suorittaa visuaalisesti pgAdminin avulla.
Uuden sarakkeen lisääminen
Vaihe 1) Kirjaudu sisään pgAdmin-tilillesi.
Vaihe 2)
- Napsauta vasemmalla olevasta navigointipalkista Tietokannat.
- Napsauta Demo.
Vaihe 3) Kirjoita kysely kyselyeditoriin:
ALTER TABLE Book ADD author VARCHAR(50);
Vaihe 4) Napsauta Suorita-painiketta.
Vaihe 5) Voit tarkistaa, onko sarake lisätty, toimimalla seuraavasti:
- Napsauta vasemmasta navigointipalkista Tietokannat.
- Laajenna Demo.
- Laajenna Schemas.
- Laajenna Julkinen.
- Laajenna taulukot.
- Laajenna kirjaa.
- Laajenna sarakkeet.
Sarake olisi pitänyt lisätä alla olevan kuvan mukaisesti:
Taulukon sarakkeen nimeäminen uudelleen
Vaihe 1) Kirjaudu sisään pgAdmin-tilillesi.
Vaihe 2)
- Napsauta vasemmalla olevasta navigointipalkista Tietokannat.
- Napsauta Demo.
Vaihe 3) Kirjoita kysely kyselyeditoriin:
ALTER TABLE Book RENAME COLUMN author TO book_author;
Vaihe 4) Napsauta Suorita-painiketta.
Vaihe 5) Tarkistaaksesi, onnistuiko muutos, laajenna kirjataulukon sarakkeita kuten aiemmin:
Sarakkeiden pitäisi nyt olla seuraavat:
Sarakkeen vaihto onnistui.
Oletusarvon asettaminen sarakkeelle
Vaihe 1) Kirjaudu sisään pgAdmin-tilillesi.
Vaihe 2)
- Napsauta vasemmalla olevasta navigointipalkista Tietokannat.
- Napsauta Demo.
Vaihe 3) Kirjoita kysely kyselyeditoriin:
ALTER TABLE Book ALTER COLUMN book_author SET DEFAULT 'Nicholas Samuel';
Vaihe 4) Napsauta Suorita-painiketta.
Vaihe 5) Testaa suorittamalla seuraava komento kyselyeditorissa:
INSERT INTO Book (id, name) VALUES (6, 'PostgreSQL for Beginners')
Vaihe 6) Nyt voimme kysyä taulukosta tarkistaaksemme, onko oletusarvo lisätty book_author -sarakkeeseen:
Tarkistusrajoituksen lisääminen
Vaihe 1) Kirjaudu sisään pgAdmin-tilillesi.
Vaihe 2)
- Napsauta vasemmalla olevasta navigointipalkista Tietokannat.
- Napsauta Demo.
Vaihe 3) Kirjoita kysely kyselyeditoriin:
ALTER TABLE Book ADD CHECK (book_author IN ('Nicholas', 'Samuel'))
Vaihe 4) Napsauta Suorita-painiketta.
Vaihe 5) Testaa tämä kirjoittamalla seuraava kysely kyselyeditoriin ja napsauttamalla Suorita-painiketta:
INSERT INTO Book VALUES(7, 'Best PostgreSQL Book', 'Gregory Bush');
Se palauttaa seuraavat tiedot:
Taulukon nimeäminen uudelleen
Vaihe 1) Kirjaudu sisään pgAdmin-tilillesi.
Vaihe 2)
- Napsauta vasemmalla olevasta navigointipalkista Tietokannat.
- Napsauta Demo.
Vaihe 3) Kirjoita kysely kyselyeditoriin:
ALTER TABLE Book RENAME TO Books;
Vaihe 4) Napsauta Suorita-painiketta.
Vaihe 5) Tarkistaaksesi, onko taulukko nimetty uudelleen, laajenna Tietokannat > Demo > Rakenteet > Julkinen > Taulukot:
Taulukon uudelleennimeäminen onnistui.
Lataa tässä opetusohjelmassa käytetty tietokanta

























