Nøgleforskel: DDL, som står for Data Definition Language, bruges hovedsagelig til at definere skemaet i en database. Det definerer også forholdet mellem posterne i databasen. DML, som står for Data Manipulation Language, er også et databasesprog. Ikke desto mindre kan DML i modsætning til DDL bruges til at indsætte, slette, genoplive og modificere dataene i stedet for blot at specificere det.
DDL, som står for Data Definition Language, bruges hovedsagelig til at definere skemaet i en database. Det definerer også forholdet mellem posterne i databasen. DDL kan også bruges til at definere visse sikkerhedsbegrænsninger. Som tidligere nævnt benytter DDL primært SQL-kommandoer, som bruges til at oprette, ændre og ødelægge databaseobjekter.
Når de er udført, resulterer DDL-kommandoerne i nye tabeller, der er gemt i "systemkatalog". Dette katalog kaldes også en datalogbog eller datakatalog. Ændringerne kan dog kun definere dataene i mappen og deres forhold til hinanden. Mens DML kan bruges til at ændre dataene selv.
DML, som står for Data Manipulation Language, er også et databasesprog. Ligesom DDL er det primært en rolle inden for databasehåndtering. Ikke desto mindre kan DML i modsætning til DDL bruges til at indsætte, slette, genoplive og modificere dataene i stedet for blot at specificere det.
DML bruges også ofte til hentning af data. Det kan opdeles i to segmenter som baseret på dets hentningskonstruktioner: Procedural DML og Non-procedural DML. Procedural DML angiver, hvilke data der skal hentes, og hvordan de krævede data skal hentes. Non-procedural DML specificerer, hvilke data der skal hentes, men ikke hvordan de krævede data skal hentes.
Sammenligning mellem DDL og DML i tabelform:
DDL | DML | |
Fuld form | Data Definition Sprog | Data manipulationssprog |
Type | Databasesprog | Databasesprog |
Undergruppe af | Struktureret forespørgselssprog (SQL) | Struktureret forespørgselssprog (SQL) |
Anvendelser | Bruges til at definere datastrukturerne, især databaseskemaer | Bruges til dataprofilering af datastrukturer |
typer | ||
Relateret til | Definere data | Indsætte, slette, genoplive og modificere data |
kommandoer | CREATE - for at oprette objekter i databasen ALTER - Ændrer databasens struktur DROP - Slet objekter fra databasen TRUNCATE - fjern alle poster fra en tabel, herunder alle rum, der er allokeret til posterne, fjernes KOMMENTAR - tilføj kommentarer til data ordbogen RENAME - omdøbe et objekt | SELECT - hent data fra en database INSERT - indsæt data i en tabel UPDATE - opdaterer eksisterende data i en tabel DELETE - sletter alle poster fra et bord, der forbliver pladsen til posterne MERGE - UPSERT operation (indsæt eller opdater) CALL - ring et PL / SQL eller Java-underprogram FORKLAR PLAN - forklar adgangsvej til data LOCK TABLE - kontrol samtidighed |
Image Courtesy: sqa.org.uk, sqlinstructor.com