Inleiding
in PostgreSQL kan de instructie ALTER TABLE
worden gebruikt om uw tabel toe te voegen, te verwijderen of te wijzigen. Als u een kolom aan een tabel wilt toevoegen, specificeert u eenvoudig de ADD COLUMN
clausule in het ALTER TABLE
statement. U zult echter een fout tegenkomen als u probeert een kolom toe te voegen die al bestaat. Het is gemakkelijk om deze fout te voorkomen door de IF NOT EXISTS
optie te gebruiken met uw ADD COLUMN
clausule. Deze optie instrueert PostgreSQL om de nieuwe kolom alleen toe te voegen als de kolomnaam niet bestaat in de tabel. In dit artikel, zullen we een kijkje nemen op de Postgres kolom toevoegen als niet bestaat commando en Bekijk enkele voorbeelden van het gebruik ervan.
Prerequisites
om het maximale uit deze tutorial te halen, moet u een paar prerequisites hebben:
- PostgreSQL moet op uw computer zijn geà nstalleerd, zodat u onze voorbeelden van het commando Postgres kolom toevoegen kunt testen als het niet bestaat.
- u dient enige basiskennis van PostgreSQL te hebben om de instructies in dit artikel te kunnen volgen.
The Postgres IF NOT EXISTS syntaxis
we beginnen met een snelle blik op de syntaxis voor deIF NOT EXISTS
optie in eenALTER TABLE
statement:
1
2 |
ALTER TABLE TABELNAAM
KOLOM TOEVOEGEN ALS het NIET BESTAAT column_name |
Laten we bespreken deze syntaxis in iets meer detail:
- Eerste, geven we de naam van de tabel die we willen toevoegen van een kolom.
- We leveren de
IF NOT EXISTS
optie na deADD COLUMN
clausule, en dan specificeren we de naam van de kolom en het gegevenstype.
de IF NOT EXISTS
optie zal controleren of de opgegeven kolomnaam bestaat in de tabel. Met deze optie wordt er geen fout geretourneerd als u een kolom probeert toe te voegen die al bestaat.
Postgres indien niet bestaat voorbeeld
voordat we verder gaan, maken we een voorbeeldtabel om te gebruiken in onze voorbeelden:
1
2 3 4 5 |
tabelmedewerkers aanmaken(
ID seriële primaire sleutel, naam varchar(50), positie varchar(50) ); |
de tabel met de naam employees
wordt nu aangemaakt.
Voeg kolom
nu, laten we proberen om een nieuwe kolom toe te voegen aan onze tabel met dezelfde kolomnaam als een bestaande kolom. We zullen de volgende ALTER TABLE
statement gebruiken:
1
2 |
ALTER TABLE employees kolomnaam toevoegen varchar(50);
fout: Kolom ” naam “van de relatie” werknemers”bestaat al |
Deze instructie geeft een fout terug omdat de kolom” naam”in de tabel employees
reeds bestaat. Om deze fout te voorkomen, kunnen we gewoon de IF NOT EXISTS
optie gebruiken. Laten we eens kijken hoe onze verklaring eruit ziet met deze optie op zijn plaats:
1
2 3 |
ALTER TABLE medewerkers KOLOM TOEVOEGEN ALS het NIET BESTAAT, naam VARCHAR(50);
MERK: De KOLOM “naam” relatie “medewerkers” al BESTAAT, het overslaan ALTER TABLE |
OPMERKING: De bovenstaande verklaring niet fout, maar het deed display een bericht weergegeven dat u een kolom met dezelfde naam bestaat al.
wat denkt u dat er zal gebeuren als u probeert een kolom toe te voegen met dezelfde naam van een bestaande kolom maar een ander gegevenstype? Laten we het proberen en zien:
1
2 3 |
ALTER TABLE employees Add COLUMN IF NOT EXISTS name TEXT;
NOTICE: Kolom ” naam “van de relatie” werknemers”bestaat al, ALTER TABLE |
de kolom zal nog steeds niet worden toegevoegd omdat een kolom met dezelfde naam al bestaat.
conclusie
wanneer u een wijziging wilt aanbrengen in een van uw PostgreSQL-tabellen, is het eenvoudig om een kolom toe te voegen, te verwijderen of te hernoemen met behulp van de instructieALTER TABLE
; er kan echter een fout optreden als u een kolom probeert toe te voegen die al bestaat. Om mogelijke fouten te vermijden, kunt u de optie IF ALREADY EXISTS
gebruiken na de ADD COLUMN
clausule in uw ALTER TABLE
instructie. In dit artikel bespraken we de Postgres kolom toevoegen als al bestaat statement en bespraken we enkele voorbeelden van hoe het te gebruiken. Met onze voorbeelden en stapsgewijze instructies kunt u kolommen toevoegen aan een tabel zonder fouten in uw eigen PostgreSQL-database.