Tento článek vysvětluje, SQL přidat sloupec provozu do existujícího SQL tabulky. Budeme také zkoumat různé příklady operací SQL přidat sloupec.
někdy chceme přidat sloupce do existující tabulky. Ve stávajících tabulkách můžeme mít záznamy. Nechceme ztratit ani stávající data. Za mnoha okolností můžeme tabulky vynechat a znovu je vytvořit, ale to se obecně nedoporučuje, zejména ve výrobním prostředí, protože to může být destruktivní, protože se týká dat., Stále můžeme provádět operaci sloupce SQL add pomocí příkazu Alter Table, který zabraňuje nutnosti přetahovat tabulky, mazat data, i když pouze dočasně.
Syntax
můžeme provést operaci sloupce SQL add na tabulce s následujícím příkazem transact SQL.,
1
2
|
ALTER TABLE jméno_tabulky
PŘIDAT jméno_sloupce column_definition;
|
Připravit prostředí
je třeba vybrat Databázi, tabulku a vložit data do něj.
proveďte následující dotaz a vytvořte tabulku zaměstnanců v databázi Sqlshackdemo.
proveďte následující dotaz a vložte do něj vzorová data.,
na následujícím snímku obrazovky vidíme existující data v tabulce zaměstnanců.
SQL přidat operaci sloupce na existující tabulce SQL
chceme přidat oddělení sloupců do tabulky zaměstnanců. Předpokládejme, že máme v tabulce mnoho sloupců; musíme zkontrolovat, zda určitý sloupec existuje v tabulce SQL nebo ne. Pokud zadaný sloupec neexistuje, chceme jej vytvořit pomocí příslušného datového typu.
zobrazení INFORMATION_SCHEMA můžeme použít ke kontrole tabulek a jejich sloupců v databázi., Proveďte následující kód a získejte seznam sloupců, jejich datový typ v tabulce zaměstnanců.
v tomto výstupu vidíme, že tabulka zaměstnanců obsahuje 4 sloupce.
přidejme nové oddělení sloupců s následujícím příkazem Alter Table.,
1
2
|
ALTER TABLE Zaměstnanec
PŘIDAT Oddělení Varchar(50)
|
Spustit tento dotaz a vyberte záznamy z tabulky Zaměstnanců. Na následujícím obrázku se můžeme podívat na nové oddělení sloupců. Všechny existující záznamy obsahují nulovou hodnotu v tomto sloupci.,
dříve jsme zkontrolovali všechny sloupce v tabulce zaměstnanců pomocí zobrazení INFORMATION_SCHEMA. V následujícím dotazu chceme vytvořit tabulku oddělení, pouze pokud v tabulce zaměstnanců neexistuje.,
1
2
3
4
5
6
7
8
9
10
11
|
POKUD NEEXISTUJE
(
SELECT *
Z INFORMATION_SCHEMA.,SLOUPCE
, KDE TABLE_NAME = ‚Zaměstnanec‘
A JMÉNO_SLOUPCE = ‚Oddělení‘
)
BEGIN
ALTER TABLE Zaměstnanec
PŘIDAT Oddělení VARCHAR(50);
END;
|
můžeme přidat sloupec do existující tabulky, pokud to umožňuje hodnoty NULL nebo mít výchozí hodnotu definována na to., We can try to add Not NULL column in the existing SQL table, but it gives the following error message,
1
2
3
4
5
6
7
8
9
10
11
|
IF NOT EXISTS
(
SELECT *
FROM INFORMATION_SCHEMA.,SLOUPCE
, KDE TABLE_NAME = ‚Zaměstnanec‘
A JMÉNO_SLOUPCE = „Telefon“
)
BEGIN
ALTER TABLE Zaměstnanec
PŘIDAT Telefon VARCHAR(15) not NULL;
END;
|
SQL přidat sloupec operace na stávající SQL tabulky s výchozí hodnota
Předpokládejme, že chceme přidat sloupec IsActive sloupec do tabulky Zaměstnanců., Můžeme mít následující hodnoty v tomto sloupci.
- Hodnota 1: Zaměstnanec je aktivní
- Hodnota 0: Zaměstnanec není aktivní.
ve výchozím nastavení, všechny stávající a nový zaměstnanec by měl mít Hodnotu 1 v IsActive sloupci. Hodnotu můžeme určit pomocí výchozího omezení.,
If we try to add a column with a Not NULL value in the existing SQL table, we get following error message,
1
2
3
4
5
6
7
8
9
10
11
|
IF NOT EXISTS
(
SELECT *
FROM INFORMATION_SCHEMA.,SLOUPCE
, KDE TABLE_NAME = ‚Zaměstnanec‘
A JMÉNO_SLOUPCE = „Telefon“
)
BEGIN
ALTER TABLE Zaměstnanec
PŘIDAT IsActive bit VÝCHOZÍ(1);
END;
|
Spustit tento dotaz a Vyberte záznamy z tabulky. U existujících záznamů neaktualizuje výchozí hodnoty.
pokud do této tabulky vložíme jakýkoli nový záznam, získá výchozí hodnotu podle následujícího snímku obrazovky.,
SQL přidat sloupec operace na stávající SQL tabulka s sloupec identity
V SQL Serveru, můžeme použít funkce Identity definovat výchozí a auto přírůstek hodnoty pro každý nový řádek. Do stávající tabulky SQL můžeme také přidat sloupec identity. Vytvoříme novou tabulku Employee_new bez sloupce identity.
jakmile je tam tabulka, můžeme přidat sloupec identity s následujícím dotazem.,
1
2
3
4
5
6
7
8
9
10
11
|
POKUD NEEXISTUJE
(
SELECT *
Z INFORMATION_SCHEMA.,SLOUPCE
, KDE TABLE_NAME = ‚Employee_new‘
A JMÉNO_SLOUPCE = ‚ID‘
)
BEGIN
ALTER TABLE Employee_new
PŘIDAT ID INT IDENTITY(1,1) not NULL
END;
|
vytvořili Jsme sloupec Identity v tabulce bez jakéhokoli záznamu. Položíme stůl a znovu ho vytvoříme. Vložte několik záznamů s následujícím dotazem.
máme data v tabulce Employee_new. Přidáme sloupec Identity s příkazem Alter table.,
1
2
3
4
5
6
7
8
9
10
11
|
POKUD NEEXISTUJE
(
SELECT *
Z INFORMATION_SCHEMA.,SLOUPCE
, KDE TABLE_NAME = ‚Employee_new‘
A JMÉNO_SLOUPCE = ‚ID‘
)
BEGIN
ALTER TABLE Employee_new
PŘIDAT ID INT IDENTITY(1,1) not NULL
END;
|
V následujícím obrázku, můžeme vidět, že aktualizace existujících záznamů, jakož.
Více SQL přidat sloupec operací pro existující SQL tabulka s sloupec identity
možná Budeme muset přidat více sloupců do existující tabulky SQL., Můžeme to udělat ve stejném příkazu Alter table.
v následujícím dotazu jsme přidali dva sloupce ZipCode a StateCode V jednom příkazu Alter Table. Musíme zadat všechny sloupce, které chcete přidat v podobném formátu.,
1
2
3
4
|
ALTER TABLE Employee_new
ADD ZipCode INT NULL,
StateCode INT NULL;
GO
|
We can get details of all columns and their properties using sp_help command.,
1
|
sp_help ‚Employee_new‘
|
SQL přidat sloupec operace na stávající SQL tabulka s tabulka designer v SSMS
V předchozích příkladech, použili jsme t-SQL chcete-li přidat sloupce do existující tabulky. Možná nejsme obeznámeni s psaním T-SQL kódu. Můžeme také použít GUI SSMS pro přidání sloupce.,
klikněte pravým tlačítkem na tabulku a klikněte na Design.
otevře návrháře tabulky. V tabulce designer
můžeme vidět všechny existující sloupce, jejich datové typy, výchozí hodnoty a další vlastnosti pro zadanou tabulku. Můžeme do toho přidat více sloupců s vhodnými datovými typy.
po dokončení uložte a ukončete návrháře tabulky v SSMS., Pokud se jej pokusíte zavřít bez uložení změn, dostaneme také varovnou zprávu.
klikněte na Ano pro uložení nového sloupce do stávající tabulky. Můžeme buď spustit příkaz Select pro ověření nového sloupce, nebo použít příkaz sp_help pro seznam všech sloupců a jejich vlastností.
1
|
sp_help Zaměstnanců.,“
|
na následujícím snímku vidíme nový sloupec v tabulce zaměstnanců.
Závěr
V tomto článku jsme se zabývali SQL přidat sloupec operace přidat nový sloupec do existující tabulky SQL. K tomu můžeme použít jak GUI, tak i metodu transact SQL. Doufám, že vám tento článek pomohl. Můžete poskytnout zpětnou vazbu nebo komentáře v sekci komentáře níže.,
- Autora
- Poslední Příspěvky
je tvůrcem jedné z největších bezplatných online sbírek článků na jedno téma, s jeho 50dílnou sérií na serveru SQL vždy na skupinách dostupnosti. Na základě svého příspěvku do komunity SQL Server byl v letech 2020 a 2021 na sqlshacku nepřetržitě oceněn různými oceněními včetně prestižního „nejlepšího autora roku“.,
Raj je vždy zájem o nové výzvy, takže pokud budete potřebovat poradenství na jakékoliv téma, na něž v jeho spisech, on může být dosaženo na rajendra.gupta16@gmail.,com
Zobrazit všechny příspěvky od Rajendra Gupta
- Vykonávající vedlejší a hlavní verze aktualizace pro AWS RDS SQL Server – 29. ledna, 2021
- Nasazení AWS RDS instance PostgreSQL – 27. ledna 2021
- Migrace v prostorách SQL databází AWS RDS serveru SQL Server pomocí AWS DMS – 25. ledna 2021