So führen Sie die Postgres ADD COLUMN IF NOT EXISTS aus

Einführung

In PostgreSQL kann die Anweisung ALTER TABLE verwendet werden, um Ihre Tabelle hinzuzufügen, zu löschen oder zu ändern. Wenn Sie einer Tabelle eine Spalte hinzufügen möchten, geben Sie einfach die ADD COLUMN -Klausel in der ALTER TABLE -Anweisung an. Es tritt jedoch ein Fehler auf, wenn Sie versuchen, eine bereits vorhandene Spalte hinzuzufügen. Es ist einfach, diesen Fehler zu vermeiden, indem Sie die IF NOT EXISTS Option mit Ihrer ADD COLUMN Klausel verwenden. Diese Option weist PostgreSQL an, die neue Spalte nur hinzuzufügen, wenn der Spaltenname in der Tabelle nicht vorhanden ist. In diesem Artikel werfen wir einen genaueren Blick auf den Befehl Postgres ADD COLUMN IF NOT EXISTS und sehen uns einige Beispiele für seine Verwendung an.

Voraussetzungen

Um das Beste aus diesem Tutorial herauszuholen, müssen Sie sicherstellen, dass einige Voraussetzungen vorhanden sind:

  • PostgreSQL muss auf Ihrem Computer installiert sein, damit Sie unsere Beispiele für den Befehl Postgres ADD COLUMN IF NOT EXISTS testen können.
  • Sie sollten über Grundkenntnisse in PostgreSQL verfügen, um die Anweisungen in diesem Artikel befolgen zu können.

Die Postgres IF NOT EXISTS Syntax

Wir beginnen mit einem kurzen Blick auf die Syntax für die IF NOT EXISTS Option in einer ALTER TABLE Anweisung:

1
2
TABELLE ÄNDERN TABELLENNAME
SPALTE HINZUFÜGEN, FALLS NICHT VORHANDEN Spaltenname

Lassen Sie uns diese Syntax etwas ausführlicher besprechen:

  • Zuerst geben wir den Namen der Tabelle an, zu der wir eine Spalte hinzufügen möchten.
  • Wir geben die Option IF NOT EXISTS nach der Klausel ADD COLUMN an und geben dann den Namen der Spalte und ihren Datentyp an.

Die Option IF NOT EXISTS prüft, ob der angegebene Spaltenname in der Tabelle vorhanden ist. Mit dieser Option wird kein Fehler zurückgegeben, wenn Sie versuchen, eine bereits vorhandene Spalte hinzuzufügen.

Postgres WENN NICHT VORHANDEN Beispiel

Bevor wir fortfahren, erstellen wir eine Beispieltabelle für unsere Beispiele:

1
2
3
4
5
TABELLE ERSTELLEN Mitarbeiter(
id SERIELLER PRIMÄRSCHLÜSSEL,
Name VARCHAR(50),
POSITION VARCHAR(50)
);

Die Tabelle mit dem Namen employees ist nun erstellt.

Spalte hinzufügen

Versuchen wir nun, unserer Tabelle eine neue Spalte mit demselben Spaltennamen wie eine vorhandene Spalte hinzuzufügen. Wir verwenden die folgende ALTER TABLE Anweisung:

1
2
TABELLE ÄNDERN, SPALTE HINZUFÜGEN name VARCHAR(50);
FEHLER: SPALTE „name“ DER Beziehung „Mitarbeiter“ EXISTIERT bereits

Diese Anweisung gibt einen Fehler zurück, da die Spalte „name“ in der employees Tabelle bereits existiert. Um diesen Fehler zu vermeiden, können wir einfach die Option IF NOT EXISTS . Mal sehen, wie unsere Aussage mit dieser Option aussieht:

1
2
3
TABELLE ÄNDERN und SPALTE HINZUFÜGEN, FALLS NICHT VORHANDEN name VARCHAR(50);
HINWEIS: SPALTE „Name“ DER employees“ EXISTIERT bereits, Überspringen
ALTER TABLE

HINWEIS: Die obige Anweisung hat keinen Fehler zurückgegeben, aber eine Meldung angezeigt, die Sie darauf hinweist, dass bereits eine Spalte mit demselben Namen vorhanden ist.

Was passiert Ihrer Meinung nach, wenn Sie versuchen, eine Spalte mit dem gleichen Namen einer vorhandenen Spalte, aber einem anderen Datentyp hinzuzufügen? Versuchen wir es und sehen Sie:

1
2
3
TABELLE ÄNDERN, SPALTE HINZUFÜGEN, FALLS NICHT VORHANDEN NAMENSTEXT;
HINWEIS: DIE SPALTE „name“ DER Beziehung „Mitarbeiter“ ist bereits VORHANDEN, Überspringen
ALTER TABLE

Die Spalte wird immer noch nicht hinzugefügt, da bereits eine Spalte mit demselben Namen vorhanden ist.

Fazit

Wenn Sie eine Änderung an einer Ihrer PostgreSQL-Tabellen vornehmen müssen, ist es einfach, eine Spalte mit der Anweisung ALTER TABLE hinzuzufügen, zu löschen oder umzubenennen. Um mögliche Fehler zu umgehen, können Sie die IF ALREADY EXISTS -Option nach der ADD COLUMN -Klausel in Ihrer ALTER TABLE -Anweisung verwenden. In diesem Artikel haben wir die Postgres ADD COLUMN IF ALREADY EXISTS-Anweisung besprochen und einige Beispiele für ihre Verwendung überprüft. Mit unseren Beispielen und Schritt-für-Schritt-Anleitungen können Sie Spalten zu einer Tabelle hinzufügen, ohne dass Fehler in Ihrer eigenen PostgreSQL-Datenbank auftreten.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.