ALTER TABLE komandu izmanto, lai mainītu PostgreSQL tabulas struktūru. Tā ir komanda, ko izmanto, lai mainītu tabulas kolonnas vai tabulas nosaukumu.
Šajā apmācībā jūs uzzināsiet:
- Sintakse
- Apraksts
- Kolonnas modificēšana
- Jaunas kolonnas pievienošana
- Galda kolonnas pārdēvēšana
- Noklusējuma vērtības iestatīšana kolonnai
- Pārbaudes ierobežojuma pievienošana
- Galda pārdēvēšana
- Izmantojot pgAdmin
Sintakse
Šeit ir komandas PostgreSQL ALTER TABLE sintakse:
ALTER TABLE table-name action;
Parametrs table-name ir tabulas nosaukums, kas jums jāmaina.
Darbības parametrs ir darbība, kas jums jāveic, piemēram, mainot kolonnas nosaukumu, mainot kolonnas datu tipu utt.
Apraksts
ALTER TABLE komanda maina esošās tabulas definīciju. Tam nepieciešamas šādas apakšformas:
- PIEVIENOT kolonnu : lai tabulai pievienotu jaunu kolonnu, tiek izmantota līdzīga sintakse kā komandai CREATE TABLE.
- PILNOT SOLU : tabulas kolonnas nomešanai. Tiks atcelti arī kolonnām noteiktie ierobežojumi un indeksi.
- SET / DROP DEFAULT : izmantojiet kolonnas noklusējuma vērtības noņemšanai. Tomēr izmaiņas attieksies tikai uz nākamajiem INSERT paziņojumiem.
- SET / DROP NOT NULL : maina, vai kolonna atļaus nulles vai nē.
- IESTATĪT STATISTIKU: statistikas apkopošanas mērķa iestatīšanai katrai kolonnai ANALĪZES operācijām.
- SET STORAGE : kolonnas glabāšanas režīma iestatīšanai. Tas noteiks, kur sleja tiek turēta, vai tā ir iekļauta rindā, vai papildu tabulā.
- IESTATĪT BEZ OIDS : Izmantojiet, lai noņemtu veco tabulas kolonnu.
- RENAME : tabulas nosaukuma vai kolonnas nosaukuma maiņai.
- ADD table_constraint : Izmantojiet, lai pievienotu jaunu ierobežojumu tabulai. Tā izmanto tādu pašu sintaksi kā komanda CREATE TABLE.
- PILNU IEROBEŽOJUMS : izmantojiet, lai atceltu tabulas ierobežojumu.
- ĪPAŠNIEKS : tabulas, secības, rādītāja vai skata īpašnieka maiņai noteiktam lietotājam.
- CLUSTER : lai atzīmētu tabulu, kas jāizmanto turpmāko kopu darbību veikšanai.
Kolonnas modificēšana
Kolonnu var modificēt vairākos veidos. Šādas modifikācijas var veikt, izmantojot ALTER TABLE komandu. Apspriedīsim šos jautājumus:
Jaunas kolonnas pievienošana
Lai pievienotu jaunu kolonnu PostgreSQL tabulai, tiek izmantota komanda ALTER TABLE ar šādu sintaksi:
ALTER TABLE table-nameADD new-column-name column-definition;
Tabulas nosaukums ir modificējamās tabulas nosaukums.
Jaunās kolonnas nosaukums ir pievienojamās jaunās kolonnas nosaukums.
Kolonnas definīcija ir jaunās kolonnas datu tips.
Skatiet grāmatu tabulu, kas parādīta zemāk:
Tabulā ir divas kolonnas, ID un nosaukums. Mums tabulā jāpievieno jauna kolonna un jānorāda vārda autors. Vienkārši palaidiet šādu komandu:
ALTER TABLE BookADD author VARCHAR(50);
Pēc iepriekš minētās komandas izpildīšanas tabula Grāmata ir šāda:
Jaunā kolonna tika veiksmīgi pievienota.
Galda kolonnas pārdēvēšana
Mēs varam izmantot ALTER TABLE komandu, lai mainītu kolonnas nosaukumu. Šajā gadījumā komandu izmanto ar šādu sintaksi:
ALTER TABLE table-nameRENAME COLUMN old-name TO new-name;
Tabulas nosaukums ir tās tabulas nosaukums, kuras kolonnu paredzēts pārdēvēt.
Old-name ir kolonnas vecais / pašreizējais nosaukums.
Jaunais nosaukums ir kolonnas jaunais nosaukums. Apsveriet tabulu, kas parādīta zemāk:
Grāmata:
Mums ir nepieciešams slejas autora vārds, lai book_author. Šeit ir komanda:
ALTER TABLE BookRENAME COLUMN author TO book_author;
Pēc komandas palaišanas mēs varam apskatīt tabulas struktūru:
Kolonnas nosaukums tika veiksmīgi mainīts.
Noklusējuma vērtības iestatīšana kolonnai
Kolonnai mēs varam iestatīt noklusējuma vērtību tā, ka pat tad, ja INSERT operāciju laikā šai kolonnai nenorādāt vērtību, tiks izmantota noklusējuma vērtība. Šajā gadījumā komandu ALTER TABLE var izmantot ar šādu sintaksi:
ALTER TABLE table-name ALTER COLUMN column-name [SET DEFAULT value];
Tabulas nosaukums ir tās tabulas nosaukums, kuras kolonna ir jāmaina.
Kolonnas nosaukums ir nosaukums, kura noklusējuma vērtība ir jāiestata.
Vērtība ir kolonnas noklusējuma vērtība.
Apsveriet tālāk sniegto grāmatu tabulu:
Kolonnai book_author ir jāiestata noklusējuma vērtība. Mēs varam izpildīt šādu komandu:
ALTER TABLE Book ALTER COLUMN book_author SET DEFAULT 'Nicholas Samuel';
Tagad ievietosim tabulā rindu:
INSERT INTO Book (id, name)VALUES (6, 'PostgreSQL for Beginners');
Ņemiet vērā, ka vērtības ievietojām tikai divām kolonnām - id un name. Tomēr slejai book_author ir izmantota noklusējuma vērtība:
Pārbaudes ierobežojuma pievienošana
Pārbaudes ierobežojums palīdz apstiprināt tabulā ievietotos ierakstus. Mēs to varam izdarīt, apvienojot ALTER TABLE komandu ar ADD CHECK paziņojumu. Sintakse:
ALTER TABLE table-name ADD CHECK expression;
Tabulas nosaukums ir maināmās tabulas nosaukums.
Izteiciens ir ierobežojums, kas jāuzliek tabulas kolonnai.
Pārveidosim tabulas Book sleju book_author tā, lai tā pieņemtu tikai vērtības, Nikolass un Samuēls:
ALTER TABLE Book ADD CHECK (book_author IN ('Nicholas', 'Samuel'));
Tagad mēģināsim tabulas Book slejā book_author ievietot vērtību, kas nav Nikolass vai Samuels.
INSERT INTO BookVALUES(7, 'Best PostgreSQL Book', 'Gregory Bush');
Izraksts parādīs šādu kļūdu:
Ievietošanas darbība neizdevās, jo mēs pārkāpām pārbaudes ierobežojumu.
Galda pārdēvēšana
Šeit ir komandas ALTER TABLE sintakse tabulas pārdēvēšanai:
ALTER TABLE table-nameRENAME TO new-table-name;
Tabulas nosaukums ir pašreizējais tabulas nosaukums.
Jaunās tabulas nosaukums ir jauns nosaukums, kas jāpiešķir tabulai.
Piemēram, mainīsim grāmatu tabulas nosaukumu uz Grāmatas:
ALTER TABLE BookRENAME TO Books;
Izmantojot pgAdmin
Tagad redzēsim, kā šīs darbības var veikt, izmantojot pgAdmin.
Jaunas kolonnas pievienošana
Lai to paveiktu, izmantojot pgAdmin, rīkojieties šādi:
1. darbība. Piesakieties savā pgAdmin kontā.
2. solis)
- Kreisajā pusē esošajā navigācijas joslā noklikšķiniet uz Databases.
- Noklikšķiniet uz Demo.
3. darbība. Vaicājuma redaktorā ierakstiet vaicājumu:
ALTER TABLE BookADD author VARCHAR(50);
4. solis) Noklikšķiniet uz pogas Izpildīt.
5. solis. Lai pārbaudītu, vai kolonna tika pievienota, rīkojieties šādi:
- Kreisajā navigācijas panelī noklikšķiniet uz Datu bāzes.
- Izvērst demonstrāciju.
- Izvērst shēmas.
- Izvērst publisko.
- Izvērst tabulas.
- Izvērst grāmatu.
- Izvērst kolonnas.
Kolonna bija jāpievieno, kā parādīts zemāk:
Galda kolonnas pārdēvēšana
Lai to paveiktu, izmantojot pgAdmin, rīkojieties šādi:
1. darbība. Piesakieties savā pgAdmin kontā.
2. solis)
- Kreisajā pusē esošajā navigācijas joslā noklikšķiniet uz Databases.
- Noklikšķiniet uz Demo.
3. darbība. Vaicājuma redaktorā ierakstiet vaicājumu:
ALTER TABLE BookRENAME COLUMN author TO book_author;
4. solis) Noklikšķiniet uz pogas Izpildīt.
5. solis. Lai pārbaudītu, vai izmaiņas bija veiksmīgas, rīkojieties šādi:
- Kreisajā navigācijas panelī noklikšķiniet uz Datu bāzes.
- Izvērst demonstrāciju.
- Izvērst shēmas.
- Izvērst publisko.
- Izvērst tabulas.
- Izvērst grāmatu.
- Izvērst kolonnas.
Kolonnām tagad jābūt šādām:
Kolonna tika veiksmīgi mainīta.
Noklusējuma vērtības iestatīšana kolonnai
Lai to paveiktu, izmantojot pgAdmin, rīkojieties šādi:
1. darbība. Piesakieties savā pgAdmin kontā.
2. solis)
- Kreisajā pusē esošajā navigācijas joslā noklikšķiniet uz Databases.
- Noklikšķiniet uz Demo.
3. darbība. Vaicājuma redaktorā ierakstiet vaicājumu:
ALTER TABLE Book ALTER COLUMN book_author SET DEFAULT 'Nicholas Samuel';
4. solis) Noklikšķiniet uz pogas Izpildīt.
5. solis. Lai pārbaudītu, vaicājumu redaktorā izpildiet šādu komandu:
INSERT INTO Book (id, name)VALUES (6, 'PostgreSQL for Beginners')
6. solis) Tagad mēs varam vaicāt tabulā, lai pārbaudītu, vai slejā book_author tika ievietota noklusējuma vērtība:
Pārbaudes ierobežojuma pievienošana
Lai to paveiktu, izmantojot pgAdmin, rīkojieties šādi:
1. darbība. Piesakieties savā pgAdmin kontā.
2. solis)
- Kreisajā pusē esošajā navigācijas joslā noklikšķiniet uz Databases.
- Noklikšķiniet uz Demo.
3. darbība. Vaicājuma redaktorā ierakstiet vaicājumu:
ALTER TABLE Book ADD CHECK (book_author IN ('Nicholas', 'Samuel'))
4. solis) Noklikšķiniet uz pogas Izpildīt.
5. solis. Lai to pārbaudītu, rīkojieties šādi:
- Vaicājumu redaktorā ierakstiet šādu vaicājumu:
INSERT INTO BookVALUES(7, 'Best PostgreSQL Book', 'Gregory Bush');
- Noklikšķiniet uz pogas Izpildīt.
Tas atgriezīs:
Galda pārdēvēšana
Lai to paveiktu, izmantojot pgAdmin, rīkojieties šādi:
1. darbība. Piesakieties savā pgAdmin kontā.
2. solis)
- Kreisajā pusē esošajā navigācijas joslā noklikšķiniet uz Databases.
- Noklikšķiniet uz Demo.
3. darbība. Vaicājuma redaktorā ierakstiet vaicājumu:
ALTER TABLE BookRENAME TO Books;
4. solis) Noklikšķiniet uz pogas Izpildīt.
5. solis. Lai pārbaudītu, vai tabula tika pārdēvēta, rīkojieties šādi:
- Kreisajā navigācijas panelī noklikšķiniet uz Datu bāzes.
- Izvērst demonstrāciju.
- Izvērst shēmas.
- Izvērst publisko.
- Izvērst tabulas.
Tabula tika veiksmīgi pārdēvēta.
Kopsavilkums:
- Lai mainītu tabulas struktūru, tiek izmantots paziņojums ALTER TABLE.
- ALTER TABLE komandai ir dažādas formas atkarībā no veicamā uzdevuma.
- Struktūra var būt tabulas kolonnas vai pati tabula.
- Mēs varam izmantot šo paziņojumu, lai mainītu tabulas nosaukumu.
- Kolonnas noklusējuma vērtības iestatīšanai var izmantot ALTER TABLE komandu.
- Izrakstu var izmantot, lai apstiprinātu vērtības, kas ievadītas tabulas kolonnā.
Lejupielādējiet šajā apmācībā izmantoto datu bāzi