Kas ir DML, DDL, DCL, TCL?

Pārējos rakstus var lasīt SQL pamatos.

Visas šīs abreviatūras ir no angļu valodas un tās apvieno pēdējais burts L (language), tātad valoda. Par kādām tad valodām iet runa? Visas šīs valodas ir SQL (structured query language) apakškopas. Tagad sīkāk par katru no tām.

DML

DML ir data manipulation language – datu manipulācijas valoda, datu ieguvei, pievienošanai, koriģēšanai un dzēšanai. Atbilstošie SQL teikumi ir SELECT, INSERT, UPDATE, DELETE, MERGE.

DDL

DDL ir data definition language – datu definēšanas valoda, datubāzes objektu izveidei, mainīšanai, dzēšanai, pārsaukšanai. Atbilstošie SQL teikumi ir CREATE, ALTER, DROP, RENAME, TRUNCATE.

DCL

DCL ir data control language – pieejas kontroles valoda, nodrošina tiesību piešķiršanu un atņemšanu uz datubāzes objektiem. Atbilstošie SQL teikumi ir GRANT, REVOKE.

TCL

TCL ir transaction control language – transakcijas kontroles valoda, nodrošina transakcijas (loģiska SQL DML teikumu kopuma kā viena vesela) izpildi vai atcelšanu. Atbilstošie SQL teikumi ir COMMIT, ROLLBACK, SAVEPOINT.

DDL un DCL teikumi Oraclē

Oracle datubāzē jebkurš sintaktiski korekts DDL vai DCL teikums, tiek automātiski pārveidots šādi:
COMMIT;
DDL/DCL teikums;
COMMIT;
Tā rezultātā pat, ja jūsu, piemēram, tabulas izveide beidzās ar kļūdas paziņojumu, ka tāda tabula jau eksistē, tad vienalga iepriekšējā transakcija ir apstiprināta ar commit. Un attiecīgi rollback pēc tam neko vairs nespēs izdarīt.

DML Oraclē

Oraclē jebkurš DML teikums (INSERT, UPDATE, DELETE, kā arī MERGE, bet izņemot SELECT) automātiski sāk transakciju un tā beidzas līdz ar COMMIT vai ROLLBACK. Patiesību sakot arī SELECT teikums var sākt transakciju, ja tas ir distributētais SELECTs, kas lasa datus izmantojot datubāzes linku.

2 Responses to Kas ir DML, DDL, DCL, TCL?

  1. […] SQL valodu un dažādām datubāzu iespējām. « Oracle problēmu risināšana Kas ir DML, DDL, DCL, TCL? […]

  2. […] haotiski un kā pagadās, tad pirmkārt tiek nevajadzīgi uzturēti lieki indeksi, kas palēnina DML (izņemot SELECT) teikumus, otrkārt – nav nekādas skaidrības kā tad aplikācija un/vai citas […]

Komentēt