introduktion
i Postgres kanALTER TABLE
sætningen bruges til at tilføje, slette eller ændre din tabel. Hvis du vil tilføje en kolonne til en tabel, skal du blot angive ADD COLUMN
klausul i ALTER TABLE
erklæring. Du vil dog støde på en fejl, hvis du forsøger at tilføje en kolonne, der allerede findes. Det er nemt at undgå denne fejl ved at bruge IF NOT EXISTS
med din ADD COLUMN
klausul. Denne indstilling beder os om kun at tilføje den nye kolonne, hvis kolonnenavnet ikke findes i tabellen. I denne artikel ser vi nærmere på kommandoen Postgres Tilføj kolonne, hvis ikke findes, og tjek nogle eksempler på dens anvendelse.
forudsætninger
for at få mest muligt ud af denne tutorial skal du sørge for, at et par forudsætninger er på plads:
- Postgraduate skal installeres på din computer, så du kan teste vores eksempler på kommandoen Postgres Tilføj kolonne, hvis ikke findes.
- du skal have nogle grundlæggende kendskab til postgraduate for at følge med instruktionerne i denne artikel.
Postgres hvis ikke eksisterer syntaks
vi begynder med et hurtigt kig på syntaksen forIF NOT EXISTS
mulighed i en ALTER TABLE
erklæring:
1
2 |
ALTER TABLE TABLE_NAME
Tilføj kolonne hvis ikke eksisterer kolonnenavn |
lad os diskutere denne syntaks lidt mere detaljeret:
- først angiver vi navnet på den tabel, som vi vil tilføje en kolonne til.
- Vi leverer
IF NOT EXISTS
efterADD COLUMN
klausul, og derefter angiver vi navnet på kolonnen og dens datatype.
IF NOT EXISTS
vil kontrollere, om det angivne kolonnenavn findes i tabellen. Når denne indstilling er på plads, returneres der ingen fejl, hvis du forsøger at tilføje en kolonne, der allerede findes.
Postgres hvis ikke eksisterer eksempel
før vi fortsætter, lad os oprette en prøvetabel, der skal bruges i vores eksempler:
1
2 3 4 5 |
Opret tabel medarbejdere(
id seriel primær nøgle, navn varchar(50), position varchar(50) ); |
tabellen hedderemployees
er nu oprettet.
Tilføj kolonne
lad os nu prøve at tilføje en ny kolonne til vores tabel med det samme kolonnenavn som en eksisterende kolonne. Vi bruger følgende ALTER TABLE
erklæring:
1
2 |
Alter Table medarbejdere Tilføj kolonnenavn varchar(50);
fejl: Kolonne ” navn “af relation” medarbejdere”eksisterer allerede |
denne erklæring vil returnere en fejl, fordi kolonnen” Navn”i employees
tabellen findes allerede. For at undgå denne fejl kan vi bare bruge IF NOT EXISTS
. Lad os se, hvordan vores erklæring ser ud med denne mulighed på plads:
1
2 3 |
ALTER TABLE medarbejdere Tilføj kolonne hvis ikke eksisterer navn VARCHAR(50);
meddelelse: kolonne “navn” på relation “medarbejdere” findes allerede, springer over alter table |
bemærk: ovenstående erklæring returnerede ikke en fejl, men den viste en meddelelse, der advarede dig om, at der allerede findes en kolonne med samme navn.
hvad tror du vil ske, hvis du forsøger at tilføje en kolonne med samme navn på en eksisterende kolonne, men en anden datatype? Lad os prøve det og se:
1
2 3 |
ALTER TABLE medarbejdere Tilføj kolonne hvis ikke eksisterer navn tekst;
meddelelse: Kolonne ” navn “af relation” medarbejdere”eksisterer allerede, springer ALTER TABLE |
kolonnen vil stadig ikke blive tilføjet, fordi en kolonne med samme navn allerede eksisterer.
konklusion
når du skal foretage en ændring i en af dine postgraduate tabeller, er det nemt at tilføje, slette eller omdøbe en kolonne ved hjælp af ALTER TABLE
sætningen; der kan dog opstå en fejl, hvis du forsøger at tilføje en kolonne, der allerede findes. For at undgå eventuelle fejl kan du bruge IF ALREADY EXISTS
efterADD COLUMN
klausul i dinALTER TABLE
erklæring. I denne artikel diskuterede vi Postgres Tilføj kolonne, hvis der allerede findes erklæring og gennemgik nogle eksempler på, hvordan man bruger den. Med vores eksempler og trinvise instruktioner kan du tilføje kolonner til en tabel uden at støde på fejl i din egen database.