Rekord hozzáadása SQL adatbázis táblájához: INSERT INTO utasítás példákkal
Ebben a leckében az SQL INSERT INTO utasítása kerül bemutatásra, amely segítségével az adatbázis tábláihoz tudunk adatokat hozzáadni, más szóval rekordokat beszúrni.
Az INSERT INTO utasítás
Az INSERT INTO utasítással új sorokat, rekordokat adhatunk hozzá egy adatbázistáblához.
SQL INSERT INTO szintaxis
Az INSERT INTO utasítást kétféleképpen lehet használni, a használat módjától függően különböző szintaktika érvényesül. Az első esetként felírt szintaxist akkor használjuk, ha a megadott adatok, értékek abban a sorrend követik egymást, ahogy az az adatbázistábla szerkezetében megvannak határozva. A sorrendiségből következik, hogy a felvitt értékek számának meg kell egyeznie az adatbázis táblájának oszlopszámával.
INSERT INTO tábla
VALUES (érték1, érték2 ...);
Code language: SQL (Structured Query Language) (sql)
Azaz, ha az INSERT INTO után megadott tábla öt oszlopot, mezőt tartalmaz, akkor a VALUES után lévő zárójelbe öt értéket kell felsorolnunk. Nagyon fontos, hogy az adattípusok megfeleljenek, azaz, ha a tábla második oszlopa egy számtípus, akkor a VALUES utáni zárójelben lévő második érték nem lehet szöveg típusú.
A második szintaxis pont azokban az esetekben lehet hasznos, amikor nem szeretnénk minden oszlop értékét megadni. Ebben az esetben az INSERT INTO és a tábla neve után meg kell adnunk azokat az oszlopokat, amelyeket adatokkal szeretnénk feltölteni.
INSERT INTO tábla (oszlop1, oszlop2 ...)
VALUES (érték1, érték2 ...);
Code language: SQL (Structured Query Language) (sql)
SQL INSERT INTO példák
Vegyük a lent látható táblát kiindulási alapnak, amely kezdeti állapotban még teljesen üres. De akár adatokat is tartalmazhatna, hiszen az adatbeszúrás úgy is lehetséges, hogy már a tábla tartalmaz adatokat.
vasarlok tábla
vezeteknev | keresztnev | lakhely | szuletesi_ev |
---|
Példa #1
Az első példában a tábla minden oszlopához rendelünk értéket, így csak a VALUES után írjuk fel a felvinni kívánt értékeket a tábla oszlopainak megfelelő sorrendben.
SQL lekérdezés
INSERT INTO vasarlok
VALUES ("Lakatos", "Boldizsár", "Debrecen", 2009);
Code language: SQL (Structured Query Language) (sql)
Eredmény
vasarlok tábla
vezeteknev | keresztnev | lakhely | szuletesi_ev |
---|---|---|---|
Lakatos | Boldizsár | Debrecen | 2009 |
Példa #2
A második példában már nem szeretnénk minden oszlophoz értéket rendelni, így muszáj megadnunk az INSERT INTO és a tábla neve után azokat az oszlopokat, amelyekhez szeretnénk adatokat felvinni.
SQL lekérdezés
INSERT INTO vasarlok (vezeteknev, keresztnev, szuletesi_ev)
VALUES ("Lakatos", "Boldizsár", 2009);
Code language: SQL (Structured Query Language) (sql)
Eredmény
vasarlok tábla
vezeteknev | keresztnev | lakhely | szuletesi_ev |
---|---|---|---|
Lakatos | Boldizsár | 2009 |