Mi az a DDL?
Az adatdefiníciós nyelv segít az adatbázis szerkezetének vagy sémájának meghatározásában. A DDL-parancsok segítenek az adatbázis szerkezetének és az egyéb adatbázis-objektumok létrehozásában. Parancsai automatikusan rögzülnek, így a módosítások véglegesen elmentődnek az adatbázisban. A DDL teljes neve Data Definition Language (adatmeghatározási nyelv).
Ezzel a DML és a DDL közötti különbséggel foglalkozó oktatóanyagban megtanulhatja:
- Mi az a DDL?
- Mi a DML?
- Miért a DDL?
- Miért DML?
- Különbség a DDL és a DML között a DBMS-ben
- Parancsok a DDL-hez
- Parancsok a DML-hez
- DDL parancs példa
- DML parancs példa
Mi a DML?
A DML parancsok lehetővé teszik az adatbázisban tárolt adatok kezelését, bár a DML parancsok nem kerülnek automatikus rögzítésre. Ráadásul nem is állandóak. Így, Lehetőség van a művelet visszaállítására. A DML teljes alakja az Adatmanipulációs nyelv.
Az alábbiakban a DDL és a DML közötti legfontosabb különbségek az adatbázis-kezelő rendszerekben:
KULCSOS KIEGÉSZÍTÉSEK:
- Az adatdefiníciós nyelv (DDL) segít az adatbázis szerkezetének vagy sémájának meghatározásában, míg az adatmanipulációs nyelv (DML parancs) lehetővé teszi az adatbázisban tárolt adatok kezelését.
- A DDL parancs az adatbázis sémájának létrehozására szolgál, míg a DML parancs az adatbázis feltöltésére és manipulálására
- A DDL és a DML összehasonlítása során a DDL utasítások az egész táblát érintik, míg a DML parancsok csak egy vagy több sort.
- A DDL-ben az SQL utasítást nem lehet visszalépni, míg a DML-ben az SQL utasítás visszaléphet.
- A DDL egy deklaratív módszer, míg a DML egy imperatív módszer.
- A fontos DDL parancsok a következők: 1) CREATE, 2) ALTER, 3) DROP, 4) TRUNCATE stb:
Miért a DDL?
Az alábbiakban a DDL-módszer használatának okait ismertetjük:
- Lehetővé teszi a megosztott adatok tárolását
- Az adatok függetlensége javítja az integritást
- Lehetővé teszi több felhasználó számára
- Növeli a biztonságot hatékony adathozzáférés
Miért DML?
Itt vannak a DML előnyei/előnyei:
- A DML utasítások lehetővé teszik az adatbázisban tárolt adatok módosítását.
- A felhasználók megadhatják, hogy milyen adatokra van szükségük.
- A DML számos különböző ízű és képességű lehetőséget kínál az adatbázisgyártók között.
- Ez hatékony emberi interakciót kínál a rendszerrel.
Különbség a DDL és DML között az DBMS-ben
Itt a fő különbség a DDL és DML parancsok között:
DDL | DML |
Az adatdefiníciós nyelv (DDL) segít az adatbázis szerkezetének vagy sémájának meghatározásában. | Az adatmanipulációs nyelv (DML parancs) lehetővé teszi az adatbázisban tárolt adatok kezelését. |
A DDL parancs az adatbázis sémájának létrehozására szolgál. | A |
DML parancs az adatbázis feltöltésére és manipulálására szolgál | |
A DDL parancs nincs tovább osztályozva. | A DML parancsokat procedurális és nem procedurális és procedurális DML-ekbe soroljuk. |
CREATE, ALTER, DROP, TRUNCATE AND COMMENT és RENAME stb. | INSERT, UPDATE, DELETE, MERGE, CALL stb. |
A táblázat oszlopát határozza meg. | A táblázat sorát hozzáadja vagy frissíti |
ADDL utasítások az egész táblázatot érintik. | ADML egy vagy több sorra hat. |
SQL utasítás nem lehet rollback | SQL utasítás lehet rollback |
ADDL deklaratív. | ADML imperatív jellegű. |
A DDL parancsok
A DDL parancsok öt típusa a következő:
CREATE
A CREATE utasítások az adatbázis-struktúra sémájának meghatározására szolgálnak:
Szintaktika:
Create database university;Create table students;Create view for_students;
DROP
A táblákat és adatbázisokat az RDBMS-ből eltávolító parancsok.
Szintaktika:
Drop object_type object_name;Drop database university;Drop table student;
ALTER
Az ALTER parancs lehetővé teszi az adatbázis szerkezetének módosítását.
Szintaktika:
Új oszlop hozzáadása a táblázatban
ALTER TABLE table_name ADD column_name COLUMN-definition;
A táblázatban meglévő oszlop módosítása:
Alter table guru99 add subject varchar;
TRUNCATE:
Ez a parancs a táblázat összes sorának törlésére és a táblázatot tartalmazó hely felszabadítására szolgál.
Szintaktika:
TRUNCATE table students;
DML-parancsok
Itt van néhány fontos DML-parancs:
- INSERT
- UPDATE
- DELETE
INSERT:
Ez az utasítás egy SQL lekérdezés. Ezt a parancsot adatok beszúrására használjuk egy táblázat sorába.
Szintaktika:
INSERT INTO TABLE_NAME (col1, col2, col3,.... col N) VALUES (value1, value2, value3, .... valueN); Or INSERT INTO TABLE_NAME VALUES (value1, value2, value3, .... valueN);
Például:
INSERT INTO students (RollNo, FIrstName, LastName) VALUES ('60', 'Tom', 'Erichsen');
UPDATE:
Ez a parancs a táblázat egy oszlopának értékét frissíti vagy módosítja.
Szintaktika:
UPDATE students SET FirstName = 'Jhon', LastName=' Wick' WHERE StudID = 3;
DELETE:
Ez a parancs egy vagy több sor eltávolítására szolgál a táblázatból.
Szintaktika:
CREATE TABLE tableName( column_1 datatype , column_2 datatype , ...);
Itt:
- A tableName paraméter a létrehozandó tábla nevét jelöli.
- A column_1, column_2… paraméterek a táblához hozzáadandó oszlopokat jelölik.
- Egy oszlopot NULL vagy NOT NULL-ként kell megadni. Ha nem adja meg, az SQL Server alapértelmezettnek a NULL értéket veszi
Példa:
CREATE TABLE Students(Student_ID Int,Student_Name Varchar(10))
ALTER
Szintaktika:
CREATE TABLE Students(Student_ID Int,Student_Name Varchar(10))
ALTER
Szintaktika:
CREATE TABLE Students(Student_ID Int,Student_Name Varchar(10))
ALTER
Szintaktika:
DROP TABLE <tableName>;
A tableName paraméter a törlendő tábla neve.
Példa:
DROP TABLE COURSE_NAMES;
DML parancs példa
INSERT
A PL/SQL-ben az SQL INSERT INTO paranccsal bármelyik táblába beszúrhatunk adatokat. Ez a parancs a táblázat nevét, a táblázat oszlopát és az oszlopértékeket veszi bemenetként, és beszúrja az értéket az alaptáblába.
Az INSERT parancs közvetlenül egy másik táblából is átveheti az értékeket a ‘SELECT’ utasítással, ahelyett, hogy megadná az egyes oszlopok értékeit. A ‘SELECT’ utasítással annyi sort szúrhatunk be, ahány sort az alaptábla tartalmaz.
Szintaktika:
BEGIN INSERT INTO <table_name>(<column1 >,<column2>,...<column_n>) VALUES(<valuel><value2>,...:<value_n>);END;
A fenti szintaxis az INSERT INTO parancsot mutatja. A táblázat neve és az értékek kötelező mezők, míg az oszlopnevek nem kötelezőek, ha a beszúrási utasítások a táblázat összes oszlopához tartalmaznak értékeket.
A ‘VALUES’ kulcsszó kötelező, ha az értékeket külön-külön adjuk meg, ahogy a fentiekben látható.
Szintaktika:
BEGIN INSERT INTO <table_name>(<columnl>,<column2>,...,<column_n>) SELECT <columnl>,<column2>,.. <column_n> FROM <table_name2>;END;
A fenti szintaxis az INSERT INTO parancsot mutatja, amely az értékeket közvetlenül a <tábla_név2> táblából veszi át a SELECT parancs segítségével.
A ‘VALUES’ kulcsszó ebben az esetben nem szerepelhet, mivel az értékeket nem adjuk meg külön.
DELETE
A táblázat törlésének
szintaxisa az alábbiakban olvasható:
DROP TABLE <TableName>;
A TableName paraméter a törlendő táblázat neve.
Példa:
DROP TABLE COURSE_NAMES;
SELECT
Az adatok megtekintéséhez az SQL Serverben a SELECT utasítást használjuk.
Szintaktika:
SELECT * FROM Course;