Erinevus DDL-i ja DML-i vahel

Relatsioonandmebaasi haldussüsteemis (RDBMS) salvestatakse tabelitesse tohutu hulk andmeid. Need tabelid on seotud andmete kogum, kus andmed salvestatakse ridade ja veergude kaupa. Selline andmete säilitamise viis muudab selle kasutamise vajaduse korral tõhusaks. Ärinõuete täitmiseks ja ka siis, kui on vaja muuta andmebaasis sisalduvaid olemasolevaid andmeid, on väga oluline pääseda juurde nende tabelite andmetele. Andmete hankimiseks või nendega manipuleerimiseks vajame struktureeritud päringu keelt (SQL). SQL-ga on kaasas standardsed käsud RDBMS-iga suhtlemiseks. Andmemääratluskeelt (DDL) kasutatakse andmebaasiskeemi määratlemiseks ja andmemanipuleerimise keelt (DML) kasutatakse andmebaasis juba olemasolevate andmetega manipuleerimiseks. Selles teemas õpime tundma DDL vs DM. Selles teemas tutvume DDL vs DML-iga.

DDL-i ja DML-i võrdlus (infograafika)

Allpool on toodud peamised erinevused DDL-i ja DML-i vahel

Peamised erinevused DDL vs DML vahel

Peamised erinevused DDL-i ja DML-i vahel järgmiselt:

  • Üks olulisi erinevusi DDL ja DML vahel on see, et Data Definition Language (DDL) määratleb andmebaasi skeemi, samal ajal kui andmebaasi skeemi muutmiseks kasutatakse Data Manipulation Language (DML).
  • DDL-i käsud on CREATE, ALTER, DROP, TRUNCATE jne, DML-käsud on INSERT, UPDATE, DELETE, SELECT jne.
  • DDL-i avaldused töötavad kogu tabelis, DML-i avaldused aga ridadena.
  • DDL-i avaldustel puudub WHERE-lause andmete filtreerimiseks, DML-i lausetes WHERE-lause andmete filtreerimiseks.
  • DDL-i avaldused täidetakse nende tehingus ja nad seotakse sellega kohe, kuna nende avalduste muudatused on püsivad. Kuid kuna DML-avaldused toimivad andmebaasiobjektide andmete muutmise teel, teostatakse need avaldused vastavalt tehingu reeglitele.
  • DDL-lausete kasutamise ajal ei saa nende tehtud muudatusi tagasi pöörata. Seega ei pea me käivitama käsku COMMIT ega ROLLBACK, samas kui DML-i avaldustes tuleks muudatuste kinnitamiseks käivitada käsk COMMIT ja ROLLBACK.

DDL vs DML võrdlustabel

Arutleme 6 peamise erinevuse vahel DDL vs DML

DDL (andmete määratluskeel)DML (andmete manipuleerimise keel)
Andme definitsioonikeelt kasutatakse andmebaasi skeemi määratlemiseks. See tegeleb sellega, kuidas andmeid andmebaasi salvestatakse.Andmete manipuleerimise keelt kasutatakse andmebaasis andmete manipuleerimiseks, st andmete otsimiseks, värskendamiseks ja kustutamiseks.
SQL-is kasutatavad DDL-käsud on CREATE, DROP, ALTER, TRUNCATE jne.SQL-is kasutatavad DML-käsud on INSERT, UPDATE, DELETE, SELECT jne.
Käsku CREATE kasutatakse tabeli või tabeli vaate loomiseks. Seda saab kasutada ka andmebaasi muude objektide, näiteks indeksi, salvestatud protseduuri, päästikute jms loomiseks.

Tabeli loomise süntaks on järgmine:

CREATE TABLE tabeli_nimi (

Veeru COLUMN_1 andmetüüp PRIMARY KEY,

COLUMN_2 andmetüüp,

COLUMN_3 andmetüüp,

);

INSERT-käsku kasutatakse andmete sisestamiseks tabelisse.

Andmete tabelisse lisamise süntaks on järgmine:

INSERT INTO tabeli_nimi (veerg_1, veerg2, … veergNN) VÄÄRTUSED (väärtus1, väärtus2 … väärtusN);

ALTER-käsku kasutatakse olemasoleva tabeli struktuuri või andmebaasi objektide muutmiseks.

Käsu ALTER kasutamise süntaks on järgmine:

ALTER TABLE table_name RENAME TO table_name_new;

UPDATE-käsku kasutatakse tabelis olemasolevate andmete värskendamiseks.

Käsu UPDATE kasutamise süntaks on järgmine:

UPDATE tabeli_nimi SET veerg1 = väärtus1, veerg 2 = väärtus2, … veergN = väärtusN KUS (tingimus);

DROP-käsku kasutatakse tabeli või tabeli vaate või muude andmebaasiobjektide kustutamiseks. DROP-käsk eemaldab nii andmed kui ka tabeli määratluse. Seega tuleks seda käsku hoolikalt kasutada.

Andmebaasi väljalangemise süntaks on järgmine:

DROP DATABASE andmebaasi_nimi;

Tabeli langetamise süntaks on järgmine:

DROP TABLE tabeli_nimi;

Käsku KUSTUTA kasutatakse kirjete kustutamiseks tabelist.

Käskluse KUSTUTAMINE süntaks on järgmine:

Kustuta tabelist_nimi;

Ülaltoodud süntaksis kustutatakse kõik tabeli read, kuid tabeli struktuur jääb samaks. Kuid kui kasutame käsku KUSTUTA koos WHERE-klausliga, siis kustutatakse ainult WHERE-klausli kohased konkreetsed kirjed. Käsu DELETE süntaks koos WHERE-klausliga on järgmine:

Kustuta tabelist_nimi WHERE (tingimus);

Käsku TRUNCATE kasutatakse andmete eemaldamiseks tabelist, kuid tabeli struktuur jääb puutumatuks. Nii kustutatakse selle käsuga ainult andmed, mitte tabel.

Käsu TRUNCATE süntaks on järgmine:

TRUNCATE TABLE tabeli_nimi;

Käsku SELECT kasutatakse andmebaasi tabelitest andmete hankimiseks.

Käsu SELECT kasutamise süntaks on järgmine:

SELECT veerg1, veerg2… veergN FROM tabeli_nimi;

Ülaltoodud avaldus valib valitud avalduses täpsustatud veerud. Kuid kui tahame valida kõik tabeli veerud, peame valimisväljavõttes kasutama tärni *.

Kõigi tabeli veergude valimise süntaks on järgmine:

SELECT * FROM table_name;

Järeldus

SQL võimaldab skeemi määratleda ja seda vastavalt andmebaasis olevale nõudele modifitseerida, kasutades andmedefinitsioonikeelt ja andmete manipuleerimise keelt. Lihtsate DDL-avalduste kasutamisel on arendajal lihtsam määratleda andmebaasi skeem, suure andmemahu jaoks tabelistruktuur. Ka DML-avalduste kasutamisega saame andmetega manipuleerida, st andmeid hankida, olemasolevaid andmeid muuta jne, kui selleks tekib vajadus. Erinevate DDL- ja DML-käskudega töötamisel tuleb silmas pidada teatud olulisi punkte. Tarkvaraarendaja või -kujundaja peab saama põhjaliku ülevaate erinevate DDL- ja DML-toimingute toimimisest, kuna need mängivad olulist rolli tõhusa andmebaasi loomisel, nagu ettevõte seda nõuab.

Soovitatavad artiklid

See on DDL Vs DML-i juhend. Siin käsitleme üksikasjalikult DDL vs DML-i koos vastavate peamiste erinevuste, infograafikute ja võrdlustabeliga. Lisateabe saamiseks võite vaadata ka järgmisi artikleid -

  1. Taru vs HUE: 6 parimat kasulikku võrdlust õppimiseks
  2. WebLogic vs JBoss
  3. SQL Server vs PostgreSQL
  4. PL SQL vs SQL

Kategooria: