Bevezetés az SQL táblába
A Relációs adatbázis-kezelő rendszerben egy táblázatot használunk az adatok hatékony és eredményes tárolására, így szükség esetén az adatok könnyen letölthetők. A táblázat a kapcsolódó adatok gyűjteménye, és az adatok sorokba és oszlopokba vannak rendezve. A táblában szereplő felvétel vagy rekord egyetlen bejegyzés, ahol a felsorolás a kapcsolódó adatok halmazát képviseli. Az SQL táblázatában az elsődleges kulcsot a rekordok egyedi azonosításához használják, míg az idegen kulcsot egy másik táblázat adatainak hivatkozására használják.
Táblázat létrehozása az SQL-ben?
A táblázat létrehozásának szintaxisa az alábbiak szerint alakul:
CREATE TABLE table_name (
COLUMN1 datatype PRIMARY KEY,
COLUMN2 datatype,
COLUMN3 datatype,
……
);
Készítsük el az 'STUDENTS' táblát az alábbiak szerint:
CREATE TABLE STUDENTS (
ROLL INT PRIMARY KEY,
NAME VARCHAR (50),
AGE INT,
SUBJECT VARCHAR (50)
);
Az alábbi módon beszúrhatjuk az 'STUDENTS' táblázatba az értékeket:
INSERT INTO STUDENTS VALUES (8, 'Ram', 12, 'ENG');
INSERT INTO STUDENTS VALUES (11, 'Priya', 11, 'MATH');
INSERT INTO STUDENTS VALUES (9, 'Rahul', 10, 'SCIENCE');
Az adatok beszúrása után láthatjuk az alábbi táblázatba beillesztett adatokat:
SELECT * FROM STUDENTS;
TEKERCS | NÉV | KOR | TANTÁRGY |
8 | kos | 12 | ANGOL |
11 | Priya | 11 | matematika |
9 | Rahul | 10 | TUDOMÁNY |
Hogyan dobhatom el az SQL táblát?
A táblázat eldobásának szintaxisa az alábbiak szerint alakul:
DROP TABLE table_name;
DROP TABLE STUDENTS;
A fenti lekérdezés az „STUDENTS” táblát ejti le, azaz a táblázat adatai és tábladefiníciója törlődik. Tehát óvatosnak kell lennünk, mielőtt végrehajtanánk egy drop utasítást, mivel a táblához kapcsolódó összes információ eltávolításra kerül az adatbázisból.
Hogyan lehet törölni a táblát az SQL-ben?
Ha a TÖRLÉS utasítást WHERE záradék nélkül használjuk, akkor a táblázat összes sorát törölni kell, de a táblázat felépítése változatlan marad. A szintaxis ugyanaz, mint az alábbiak:
DELETE FROM table_name;
A törlési nyilatkozatot az SQL az aktuális táblázatban létező rekordok törlésére használja. Amikor szükség merül fel, és nem akarunk bizonyos rekordokat, a törlési nyilatkozatot a Hely záradékkal együtt használjuk ezeknek a rekordoknak a eltávolítására. A szintaxis ugyanaz, mint az alábbiak:
DELETE FROM table_name WHERE (condition);
DELETE FROM STUDENTS WHERE SUBJECT= 'MATH';
A fenti lekérdezés az alábbi eredményt adja:
TEKERCS | NÉV | KOR | TANTÁRGY |
8 | kos | 12 | ANGOL |
9 | Rahul | 10 | TUDOMÁNY |
Hogyan lehet átnevezni a táblát az SQL-ben?
Előfordul, hogy valamikor, miután létrehoztuk a táblát, át akarjuk nevezni azt. ALTER TABLE utasítás használja a tábla átnevezését.
ALTER TABLE table_name RENAME TO table_name_new;
Ha meg akarjuk változtatni a „STUDENTS” tábla nevét, akkor az alábbiak szerint végezhető el.
ALTER TABLE STUDENTS RENAME TO STUDENT_NEW;
Hogyan csonkoljuk le a táblát az SQL-ben?
Ha felmerül a táblán belüli adatok törlésének szükségessége, és a táblázat szerkezetének, például oszlopoknak, stb. A formájának meg kell maradnia, használhatjuk a TRUNCATE utasítást, amely csak az adatokat törli a táblából, a táblázatot nem.
A TRUNCATE utasítás használatának szintaxisa az alábbiak szerint alakul:
TRUNCATE TABLE table_name;
TRUNCATE TABLE STUDENTS;
A fenti lekérdezés törli az adatokat a 'STUDENTS' táblából. A táblázat a következőképp néz ki a TRUNCATE művelet után:
SELECT * FROM STUDENTS;
TEKERCS | NÉV | KOR | TANTÁRGY |
Más szavakkal azt is elmondhatjuk, hogy a TRUNCATE utasítás ugyanazt a műveletet hajtja végre, amelyet a DELETE utasítás felhasználásával hajthatunk végre, de a WHERE kikötés használata nélkül.
A TRUNCATE utasítás használatának előnye, hogy nem kell ledobni a táblát, és nem kell újra létrehoznunk a táblát. Ezenkívül hatékony módszer a rekordok törlésére az asztalból olyan esetekben, amikor nem kell aggódnunk a visszalépés miatt.
Hogyan lehet megváltoztatni a táblát az SQL-ben?
Az ALTER tábla utasítás segítségével módosíthatjuk a jelenleg a táblákban lévõ oszlopokat. Ugyanezzel az állítással különféle korlátozásokat is levethetünk vagy hozzáadhatunk az asztalra.
Az alábbiakban bemutatjuk a szintaxist, hogy új oszlopot adjunk a meglévő táblázathoz:
ALTER TABLE table_name ADD (column_name1 datatype, column_name2 datatype… column datatype);
Adjunk egy újabb „CÍM” oszlopot a meglévő „STUDENTS” táblázathoz.
ALTER TABLE STUDENTS ADD ADDRESS VARCHAR (50);
SELECT * FROM STUDENTS;
TEKERCS | NÉV | KOR | TANTÁRGY | CÍM |
8 | kos | 12 | ANGOL | |
11 | Priya | 11 | matematika | |
9 | Rahul | 10 | TUDOMÁNY |
A fenti lekérdezésnél a CÍM oszlop hozzáadódik a táblázathoz.
Ha el akarunk dobni egy oszlopot, akkor ezt az alábbi szintaxissal lehet megtenni:
ALTER TABLE table_name DROP COLUMN column_name;
Nézzük meg az alábbi példát a CÍM oszlop eldobásával.
ALTER TABLE table_name DROP COLUMN ADDRESS;
A fenti lekérdezés biztosítja az alábbi eredményt.
TEKERCS | NÉV | KOR | TANTÁRGY |
8 | kos | 12 | ANGOL |
11 | Priya | 11 | matematika |
9 | Rahul | 10 | TUDOMÁNY |
Itt láthatjuk, hogy a táblázat módosul, mivel a CÍM oszlop eltávolításra került az 'STUDENTS' táblából.
Az ALTER utasítás segítségével egyszerre egy vagy több oszlopot módosíthatunk.
Az oszlop módosítására szolgáló szintaxis az alábbiakban látható.
ALTER TABLE STUDENTS MODIFY column_name datatype;
ALTER TABLE STUDENTS MODIFY SUBJECT VARCHAR (30);
Hogyan lehet adatokat beolvasni a táblából az SQL-ben?
Az SQL-ben a SELECT utasítást az egyik rugalmas mechanizmusként használják, hogy adatokat szerezzenek az adatbázisok tábláiból. A SELECT és a lekérdezés szintaxisa az alábbiak szerint alakul:
SELECT column1, column2… FROM table_name;
A fenti lekérdezésbe be kell helyeznünk azokat az oszlopokat, amelyekhez adatokat szeretnénk letölteni a táblázatból. Ha az összes oszlop adatait vagy a teljes táblázat adatait szeretnénk letölteni, megtehetjük az alábbi szintaxis használatával:
SELECT * FROM table_name;
SELECT * FROM STUDENTS;
TEKERCS | NÉV | KOR | TANTÁRGY |
8 | kos | 12 | ANGOL |
11 | Priya | 11 | matematika |
9 | Rahul | 10 | TUDOMÁNY |
Ezzel a helyettesítő karakter használata - '*' lekérdezi a 'STUDENTS' tábla összes sorát és oszlopát. Ez a SELECT utasítás legegyszerűbb formája. Ha azonban felmerül a követelmény, ahol korlátozni kell az adatok letöltését néhány különleges feltételnek megfelelően, akkor a WHERE záradékot kell alkalmaznunk. Ennek szintaxisa az alábbiak szerint alakul:
SELECT column1, column2…
FROM table_name
WHERE (condition);
Nézzük meg, hogyan lehet adatokat behozni a megadott feltételekkel a fenti lekérdezés segítségével. Tegyük fel, hogy a „STUDENTS” táblázatból ki akarjuk választani a 10 évesnél nagyobb életkorú hallgató ROLL és Téma tárgyát.
SELECT ROLL, SUBJECT FROM STUDENTS WHERE AGE > 10;
A fenti lekérdezés csak azokra a hallgatókra korlátozza az eredményeket, akik életkora több mint 10 év. Itt a 'WHERE' kikötés a lekérdezés eredményét a megadott feltételre korlátozza.
TEKERCS | NÉV | KOR | TANTÁRGY |
8 | kos | 12 | ANGOL |
11 | Priya | 11 | matematika |
Hogyan lehet a táblázatot másolni az SQL-ben?
Az adatokat az egyik táblázatból a másikba másolhatjuk, akár SELECT INTO, akár INSERT INTO utasításokkal. A SELECT INTO utasítás használata közben az adatbázisnak nem kell rendelkeznie a céltáblával, ahova az adatok lemásolásra kerülnek. Az INSERT INTO utasítás használata esetén azonban a cél táblázatnak, amelybe az adatokat lemásolni kell, léteznie kell az adatbázisban.
SELECT * INTO table_new FROM table_old;
A fenti lekérdezés átmásolja az összes oszlopot a table_old és a table_new között.
Ha csak néhány oszlopot akarunk másolni az egyik táblából a másikba, akkor az alábbi szintaxist használhatjuk:
SELECT column1, column2… INTO table_new FROM table_old;
Vegyünk egy példát, ahol át szeretnénk másolni az adatokat a táblából egy másik „STUDENT_DETAILS” táblába, és az alábbiak szerint hajthatjuk végre:
SELECT * INTO STUDENT_DETAILS FROM STUDENTS;
Egy további „STUDENT_DETAILS” táblát kell létrehozni az alábbiak szerint:
TEKERCS | NÉV | KOR | TANTÁRGY |
8 | kos | 12 | ANGOL |
11 | Priya | 11 | matematika |
9 | Rahul | 10 | TUDOMÁNY |
Az adatok másolásának szintaxisa az INSERT INTO utasítás segítségével:
INSERT INTO table_new(column1, column2… )
SELECT column1, column2… FROM table_old WHERE (condition);
Amint azt fentebb tárgyaltuk, az INSERT INTO utasításhoz a céltábla jelenléte szükséges, először létre kell hoznunk a céltáblázat szerkezetét az adatbázisban. A STUDENT_DETAILS táblázatok szerkezetének létrehozása után az alábbi lekérdezést kell megválaszolnunk.
INSERT INTO STUDENT_DETAILS (ROLL, NAME, AGE)
SELECT ROLL, NAME, AGE FROM STUDENTS
WHERE SUBJECT = 'SCIENCE';
A fenti lekérdezés az alábbi eredményt adja:
TEKERCS | NÉV | KOR | TANTÁRGY |
9 | Rahul | 10 | TUDOMÁNY |
Fontos megjegyeznünk, hogy az INSERT INTO utasítás használata közben a forrás- és a céltáblák oszlopainak adattípusainak meg kell egyezniük egymással.
Következtetés
Az RDBMS-ben a táblák az adatok tárolását, visszakeresését, karbantartását és manipulálását a leghatékonyabb módon teszik lehetővé. Különböző parancsok használatával az adatokat az üzleti követelményeknek megfelelően rendezhetjük és kezelhetjük. A tervező / fejlesztő feladata, hogy látja a különböző parancsok és műveletek rugalmasságát, hogy kiválassza a legjobban a terveket és a megvalósításokat.
Ajánlott cikkek
Ez egy útmutató az SQL Table táblájához. Itt tárgyaljuk a Bevezetés és az SQL táblázat létrehozásának, eldobásának, törlésének, átnevezésének, csonkításának, megváltoztatásának, adatának lekérdezésének és másolásának táblázatait. A következő cikkeket is megnézheti további információkért -
- Idegen kulcs az SQL-ben
- Tranzakciók az SQL-ben
- SQL nézetek
- Adatbázis SQL-ben
- Példák az INSERT-re az Oracle-ben