Ez a cikk magyarázza az SQL add oszlop működését egy meglévő SQL táblába. Az SQL add oszlopműveletek különböző példáit is feltárjuk.

néha oszlopokat akarunk hozzáadni egy meglévő táblához. A meglévő táblázatokban lehet, hogy rekordok vannak benne. Nem akarjuk elveszíteni a meglévő adatokat is. Sok esetben ledobhatjuk a táblákat, és újra létrehozhatjuk őket, de ez általában nem ajánlott, különösen termelési környezetben, mivel az adatokra nézve romboló lehet., Az Alter Table paranccsal továbbra is végrehajthatunk egy SQL add oszlop műveletet, amely elkerüli a táblázatok leejtését, az adatok törlését, még akkor is, ha csak ideiglenesen.

Syntax

SQL add oszlop műveletet hajthatunk végre egy táblán a következő transact SQL paranccsal.,

1
2

ALTER TABLE table_name
HOZZÁADÁS column_name column_definition;

Előkészíti a környezetet

van szükség, hogy válassza ki egy Adatbázis tábla, majd helyezze adatok bele.

végezze el a következő lekérdezést, hogy hozzon létre egy alkalmazott tábla SQLShackDemo adatbázisban.

hajtsa végre a következő lekérdezést a minta adatainak beillesztéséhez.,

a következő képernyőképen láthatjuk a meglévő adatokat a munkavállalói táblázatban.

SQL add column operation on an existing SQL table

we want to add the column department in the Employee table. Tegyük fel, hogy sok oszlop van a táblázatban; ellenőriznünk kell, hogy létezik-e egy adott oszlop az SQL táblázatban vagy sem. Ha a megadott oszlop nem létezik, akkor azt a megfelelő adattípussal akarjuk létrehozni.

az INFORMATION_SCHEMA nézet segítségével ellenőrizhetjük a táblákat és azok oszlopait egy adatbázisban., Hajtsa végre a következő kódot, hogy megkapja az oszlopok listáját, azok adattípusát a munkavállalói táblázatban.

ebben a kimenetben láthatjuk, hogy a munkavállalói táblázat 4 oszlopot tartalmaz.

adjunk hozzá egy új oszloposztályt a következő Alter Table paranccsal.,

1
2

ALTER TABLE Alkalmazott
HOZZÁADÁS Osztály Varchar(50)

Végre ezt a lekérdezést, majd válassza ki a nyilvántartást a Munkavállaló táblázat. A következő képernyőképen megnézhetjük az új oszloposztályt. Az összes meglévő rekord NULL értéket tartalmaz ebben az oszlopban.,

korábban ellenőriztük a munkavállalói táblázat összes oszlopát az INFORMATION_SCHEMA nézet segítségével. A következő lekérdezésben csak akkor akarunk Osztálytáblát létrehozni, ha az nem létezik a munkavállalói táblázatban.,

1
2
3
4
5
6
7
8
9
10
11

HA NEM LÉTEZIK
(
VÁLASSZA ki *
A INFORMATION_SCHEMA.,OSZLOP
HOL TABLE_NAME = ‘Alkalmazott’
, MAJD a COLUMN_NAME = ‘Osztály’
)
BEGIN
ALTER TABLE Alkalmazott
HOZZÁADÁS Osztály VARCHAR(50);
END;

tehetünk hozzá egy oszlop, egy már létező asztalhoz, ha lehetővé teszi a NULL értékeket, vagy egy alapértelmezett érték meghatározott rajta., 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.,OSZLOP
HOL TABLE_NAME = ‘Alkalmazott’
, MAJD a COLUMN_NAME = ‘Telefon’
)
BEGIN
ALTER TABLE Alkalmazott
HOZZÁADÁS Telefon VARCHAR(15) Nem ÜRES;
END;

SQL oszlop hozzáadása művelet meglévő SQL táblázat alapértelmezett érték

Tegyük fel, hogy szeretnénk az oszlop IsActive oszlop a Munkavállaló táblázat., Ebben az oszlopban a következő értékek lehetnek:

  • 1 érték: az alkalmazott aktív
  • 0 érték: az alkalmazott nem aktív

alapértelmezés szerint minden létező és új alkalmazottnak 1 értéket kell tartalmaznia az IsActive oszlopban. Megadhatunk egy értéket az alapértelmezett kényszer használatával.,

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.,OSZLOP
HOL TABLE_NAME = ‘Alkalmazott’
, MAJD a COLUMN_NAME = ‘Telefon’
)
BEGIN
ALTER TABLE Alkalmazott
HOZZÁADÁS IsActive kicsit ALAPÉRTELMEZETT(1);
END;

Végre ezt a lekérdezést, majd Válassza ki a feljegyzések az asztaltól. Meglévő rekordok esetén nem frissíti az alapértelmezett értékeket.

Ha bármilyen új rekordot beillesztünk ebbe a táblázatba, akkor az alapértelmezett értéket kapja a következő képernyőkép szerint.,

SQL oszlop hozzáadása művelet meglévő SQL tábla azonosító oszlop

Az SQL Szerver, akkor használjuk a Személyazonosító funkciója, hogy adjuk meg az alapértelmezett, majd az automatikus növekmény értékét minden új sor. Mi lehet hozzá egy identitás oszlopot a meglévő SQL tábla is. Hozzunk létre egy új táblát Employee_new azonosító oszlop nélkül.

miután a táblázat ott van, hozzáadhatunk egy identitás oszlopot a következő lekérdezéssel.,

1
2
3
4
5
6
7
8
9
10
11

HA NEM LÉTEZIK
(
VÁLASSZA ki *
A INFORMATION_SCHEMA.,Oszlopok
ahol TABLE_NAME = ‘Employee_new’
és COLUMN_NAME = ‘ID’
)
ALTER TABLE Employeee_new
ADD ID Int IDENTITY(1,1) Nem NULL
vége;

létrehoztuk az identitás oszlopot egy táblázatban rekord nélkül. Dobjuk le az asztalt, és hozzuk létre újra. Helyezzen be néhány rekordot a következő lekérdezéssel.

adataink vannak az Employee_new táblázatban. Adjunk hozzá egy identitás oszlopot az Alter table paranccsal.,

1
2
3
4
5
6
7
8
9
10
11

HA NEM LÉTEZIK
(
VÁLASSZA ki *
A INFORMATION_SCHEMA.,Oszlopok
ahol TABLE_NAME = ‘Employee_new’
és COLUMN_NAME = ‘ID’
)
ALTER TABLE Employeee_new
ADD ID Int IDENTITY(1,1) Nem NULL
vége;

a következő képernyőképen láthatjuk, hogy frissíti a meglévő rekordokat is.

több SQL add oszlop műveletek egy meglévő SQL tábla egy identitás oszlop

lehet, hogy hozzá több oszlopot egy meglévő SQL tábla., Meg tudjuk csinálni ugyanazon Alter table parancson belül.

a következő lekérdezésben két oszlop ZipCode-ot és StateCode-ot adtunk hozzá egyetlen Alter Table parancshoz. Meg kell adnunk az összes oszlopot, hogy hasonló formátumban adjunk hozzá.,

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 add oszlop művelet egy meglévő SQL tábla a táblázat tervező SSMS

az előző példákban, használtuk T-SQL hozzá oszlopokat a meglévő táblázatban. Lehet, hogy nem ismerjük a T-SQL kód írását. Az SSMS GUI-t is használhatjuk oszlop hozzáadásához.,

kattintson a jobb egérgombbal az asztalra, majd kattintson a Design gombra.

megnyit egy asztaltervezőt. Láthatjuk az összes létező oszlopot, azok adattípusait, alapértelmezett értékeit és egyéb tulajdonságait egy adott táblázatban tervező

adjon meg egy oszlop nevét, majd válassza ki az adattípusokat a legördülő menüből. Ehhez több oszlopot is felvehetünk a megfelelő adattípusokkal.

Ha elkészült, mentse el és lépjen ki az asztaltervezőből az SSMS-ben., Ha megpróbálja bezárni a Változtatások mentése nélkül, figyelmeztető üzenetet is kapunk.

kattintson az Igen gombra az új oszlop mentéséhez a meglévő táblázatban. Az új oszlop ellenőrzéséhez vagy az sp_help paranccsal megadhatjuk az összes oszlopot és azok tulajdonságait.

1
sp_help ‘alkalmazott.,”

a következő képernyőképen egy új oszlop látható a munkavállalói táblázatban.

következtetés

ebben a cikkben feltártuk az SQL add oszlopműveleteket, hogy új oszlopot adjunk egy meglévő SQL táblához. Ehhez mind a GUI, mind a transact SQL módszert használhatjuk. Remélem hasznosnak találta ezt a cikket. Visszajelzést vagy megjegyzéseket adhat az alábbi megjegyzések részben.,

  • Szerző
  • Utolsó Hozzászólás
Mint egy MCSA tanúsított a Microsoft Certified Edző Gurgaon, India, 13 éves tapasztalat, Rajendra működik, hogy a különböző nagyvállalatok összpontosítva teljesítmény optimalizálás, monitoring, magas rendelkezésre állás, valamint katasztrófa-helyreállítási stratégiák megvalósítását., Több száz hiteles cikk szerzője az SQL Server, Azure, MySQL, Linux, Power BI, Performance tuning, AWS/Amazon RDS, Git és kapcsolódó technológiák területén, amelyeket eddig több mint 10m olvasó nézett meg.
ő az alkotója az egyik legnagyobb ingyenes online gyűjtemények cikkek egyetlen témában, az ő 50 részes sorozat SQL Server mindig rendelkezésre álló csoportok. Az SQL Server közösséghez való hozzájárulása alapján 2020-ban és 2021-ben az SQLShack-en folyamatosan elismerték különböző díjakkal, köztük a rangos “az év legjobb szerzőjével”.,
Raj mindig érdekli az új kihívásokat, így ha segítségre van szüksége az írásaiban szereplő bármely témában, akkor rajendra-ban érhető el.gupta16@gmail.,com
összes Megtekintése hozzászólások Rajendra Gupta

Legújabb hozzászólások Rajendra Gupta (minden)
  • Végrehajtása kisebb-nagyobb verzió frissítéseket AWS RDS SQL Server – január 29, 2021
  • Bevetni AWS RDS PostgreSQL esetekben – január 27, 2021
  • Vándorolnak az intézményi SQL adatbázisok, hogy AWS RDS SQL Server segítségével AWS DMS – január 25, 2021