Jak provést sloupec Postgres přidat, pokud neexistuje

Úvod

v PostgreSQL lze příkaz ALTER TABLE použít k přidání, odstranění nebo úpravě tabulky. Pokud chcete přidat sloupec do tabulky, jednoduše zadejte klauzuli ADD COLUMN v příkazu ALTER TABLE. Pokud se však pokusíte přidat sloupec, který již existuje, dojde k chybě. Je snadné se této chybě vyhnout pomocí volby IF NOT EXISTS s klauzulí ADD COLUMN. Tato volba přikáže PostgreSQL Přidat nový sloupec pouze v případě, že název sloupce v tabulce neexistuje. V tomto článku se blíže podíváme na sloupec Postgres přidat, pokud neexistuje příkaz a podívejte se na některé příklady jeho použití.

Předpoklady

s cílem získat co nejvíce z tohoto kurzu, budete muset ujistěte se, že pár předpoklady jsou na místě:

  • PostgreSQL musí být nainstalována na vašem počítači, takže si můžete vyzkoušet naše příklady Postgres PŘIDAT SLOUPEC, POKUD NEEXISTUJE příkaz.
  • měli byste mít základní znalosti PostgreSQL, abyste mohli postupovat podle pokynů uvedených v tomto článku.

Postgres POKUD NE, EXISTUJE syntaxe

začneme s rychlý pohled na syntaxe IF NOT EXISTS možnost v ALTER TABLE prohlášení:

1
2
ALTER TABLE JMÉNO_TABULKY
PŘIDAT SLOUPEC, POKUD NE EXISTUJE jméno_sloupce

Pojďme diskutovat o této syntaxe v trochu podrobněji:

  • za Prvé, musíme určit název tabulky, do které chceme přidat sloupec.
  • dodáváme IF NOT EXISTS možnost po ADD COLUMN klauzule, a pak jsme se určit název sloupce a jeho datový typ.

volba IF NOT EXISTS zkontroluje, zda v tabulce existuje zadaný název sloupce. Pokud je tato možnost zavedena, nebude vrácena žádná chyba, pokud se pokusíte přidat sloupec, který již existuje.

Postgres, POKUD NEEXISTUJE příklad:

Než budeme pokračovat, pojďme vytvořit ukázkové tabulky používat v našich příkladech:

1
2
3
4
5
CREATE TABLE zaměstnanci(
id SERIAL PRIMARY KEY,
název VARCHAR(50),
POZICE VARCHAR(50)
);

tabulku s názvem employees je nyní vytvořena.

Přidat sloupec

nyní se pokusíme přidat do naší tabulky nový sloupec se stejným názvem sloupce jako existující sloupec. Budeme používat následující ALTER TABLE prohlášení:

1
2
ALTER TABLE zaměstnanci ADD SLOUPCI název VARCHAR(50);
CHYBA: SLOUPEC „název“ vztah „zaměstnanců“ již EXISTUJE

Toto prohlášení vrátí chybu, protože sloupci „jméno“ v employees tabulka již existuje. Abychom se této chybě vyhnuli, můžeme použít pouze volbu IF NOT EXISTS. Podívejme se, jak vypadá naše prohlášení s touto možností:

1
2
3
ALTER TABLE zaměstnanci ADD SLOUPEC POKUD NE, EXISTUJE název VARCHAR(50);
UPOZORNĚNÍ: SLOUPEC „název“ vztah „zaměstnanců“ již EXISTUJE, přeskakování
ALTER TABLE

POZNÁMKA: výše uvedené prohlášení nevrátil chybu, ale to se zobrazit zpráva s upozorněním, že sloupec se stejným názvem již existuje.

Co si myslíte, že se stane, pokud se pokusíte přidat sloupec se stejným názvem, existující sloupec, ale jiný datový typ? Pojďme zkuste to a uvidíte:

1
2
3
ALTER TABLE zaměstnanci ADD SLOUPEC POKUD NE, EXISTUJE název TEXTU;
UPOZORNĚNÍ: SLOUPEC „název“ vztah „zaměstnanců“ již EXISTUJE, přeskakování
ALTER TABLE

sloupec bude ještě neměly být přidávány, protože sloupec se stejným názvem již existuje.

Závěr

Když potřebujete provést změnu jednoho z vašich PostgreSQL tabulky, je snadné, aby přidat, odstranit nebo přejmenovat sloupec pomocí ALTER TABLE prohlášení; nicméně, může dojít k chybě, pokud se pokusíte přidat sloupec, který již existuje. Možnost vyhnout se případné chyby, můžete použít IF ALREADY EXISTS možnost po ADD COLUMN doložky v ALTER TABLE prohlášení. V tomto článku jsme diskutovali o Postgres přidat sloupec, pokud již existuje prohlášení a přezkoumala některé příklady, jak ji používat. S našimi příklady a podrobnými pokyny budete moci přidávat sloupce do tabulky, aniž byste narazili na chyby ve vlastní databázi PostgreSQL.

Napsat komentář

Vaše e-mailová adresa nebude zveřejněna. Vyžadované informace jsou označeny *