„SQL” változatai közötti eltérés
[nem ellenőrzött változat] | [nem ellenőrzött változat] |
Tartalom törölve Tartalom hozzáadva
→Cartesian-join, Descartes-szorzat: -- diaphol |
|||
54. sor:
A nyelvben az utasításokat a '''pontosvessző''' választja el egymástól.
=== Adatdefiníciós utasítások (Data Definition Language - DDL) ===
Azt a nyelvet melynek segítségével az adatbázis adminisztrátorok az új adatbázisok sémáját definiálják adatdefiníciós nyelveknek (DDL = Data Definition Language) nevezzük.
91. sor:
</source>
Ez pedig egy adattáblát szüntet meg.
==== TRUNCATE ====
A truncate parancs egy tábla tartalmát törli (de a táblát magát nem).<syntaxhighlight lang="sql">
TRUNCATE TABLE egy_tabla;
</syntaxhighlight>A DDL (Data Definition) és DML (Data Manipulation) között jelentős különbség nem abban áll, hogy változtat-e az adatbázis tartalmán (hiszen például a szó szoros értelmében adat "törlés" történik drop, truncate és delete esetén is). A különbség a tranzakcióbiztosságban vehető észre: a ddl utasítások nem tranzakcióbiztosak, azaz azonnal végrehajtásra kerülnek, míg a dml utasítások (delete, insert, update) csak COMMIT parancs után válnak véglegessé. Ez a gyakorlatban:
- ha például update történik egy táblán, azt a másik felhasználó csak akkor láthatja ha commit is történik
- ha drop paranccsal megszüntetünk egy objektumot, akkor automatikusan törlődik
- dml parancsok commitálása (véglegesítése) előtt egy ROLLBACK paranccsal visszavonhatóak
- a truncate parancs ennek megfelelően ddl parancsnak minősíthető
=== Adatlekérdező utasítások (QUERY) ===
|