logo

Forskellen mellem DDL og DML

En database er en liste over relaterede poster, og Database Management System er den mest almindelige måde at administrere disse databaser (DBMS). Det SQL (Structured Query Language) kommandoer er nødvendige for at interagere med databasesystemer. Disse SQL-kommandoer kan bruges til at bygge tabeller, indsætte data i tabeller, fjerne eller slette tabeller, ændre tabeller og angive tilladelser for brugere. Vi kan kategorisere SQL-kommandoer som DDL, DQL, DCL og DML.

Denne artikel forklarer den komplette oversigt over DDL- og DML-sprog. Forskellen mellem DDL- og DML-kommandoer er den mest almindelige del af et interviewspørgsmål. Nøgleforskellen er, at DDL-kommandoen bruges til at oprette et databaseskema, mens DML-kommandoen bruges til at ændre tabellens eksisterende data . Før vi foretager sammenligningen, vil vi først kende disse SQL kommandoer .

DDL vs DML

Hvad er en DDL-kommando?

DDL står for Data Definition Language. Som navnet antyder, hjælper DDL-kommandoerne med at definere strukturen af ​​databaserne eller skemaet. Når vi udfører DDL-sætninger, træder det i kraft med det samme. Ændringerne i databasen ved hjælp af denne kommando gemmes permanent, fordi dens kommandoer er automatisk overført. Følgende kommandoer kommer under DDL-sprog:

    SKAB: Den bruges til at oprette en ny database og dens objekter såsom tabel, visninger, funktion, lagret procedure, triggere osv.DRÅBE: Den bruges til at slette databasen og dens objekter, inklusive strukturer, fra serveren permanent.ÆNDRE: Det bruges til at opdatere databasestrukturen ved at ændre karakteristika for en eksisterende attribut eller tilføje nye attributter.TRUNCATE: Det bruges til fuldstændigt at fjerne alle data fra en tabel, inklusive deres struktur og pladsallokering på serveren.OMDØB: Denne kommando omdøber indholdet i databasen.

Hvorfor bruger vi DDL-kommandoer?

Følgende er grundene til at bruge DDL-kommandoer:

  • Det giver os mulighed for at gemme delte data i en database.
  • Det forbedrede integriteten på grund af datauafhængighedsfunktionen.
  • Det vil gøre det muligt for flere brugere at arbejde på de samme databaser.
  • Det forbedrede sikkerhedseffektiv dataadgang.

Hvad er en DML-kommando?

Det står for Data Manipulation Language. DML-kommandoerne omhandler manipulation af eksisterende poster i en database. Den er ansvarlig for alle ændringer, der sker i databasen. Ændringerne i databasen ved hjælp af denne kommando kan ikke gemmes permanent, fordi dens kommandoer ikke er automatisk overført. Derfor kan ændringer blive rollback. Følgende kommandoer kommer under DML-sprog:

    VÆLG: Denne kommando bruges til at udtrække information fra en tabel.INDSÆT: Det er en SQL-forespørgsel, der giver os mulighed for at tilføje data til en tabels række.OPDATERING: Denne kommando bruges til at ændre eller modificere indholdet af en tabel.SLET: Denne kommando bruges til at slette poster fra en databasetabel, enten individuelt eller i grupper.

Hvorfor bruger vi DML-kommandoer?

Følgende er grundene til at bruge DML-kommandoer:

  • Det hjælper brugere med at ændre dataene i en databasetabel.
  • Det hjælper brugerne med at specificere, hvilke data der er nødvendige.
  • Det letter menneskelig interaktion med systemet.

Nøgleforskelle mellem DDL- og DML-kommandoer

Følgende punkter forklarer de vigtigste forskelle mellem DDL- og DML-kommandoer:

  • Data Definition Language (DDL)-sætninger beskriver strukturen af ​​en database eller et skema. Data Manipulation Language (DML)-udsagn tillader på den anden side at ændre data, der allerede findes i databasen.
  • Vi bruger DDL-kommandoer til at oprette databasen eller skemaet, mens DML-kommandoer bruges til at udfylde og manipulere databasen.
  • DDL-kommandoer kan påvirke hele databasen eller tabellen, hvorimod DML-sætninger kun påvirker enkelte eller flere rækker baseret på den betingelse, der er angivet i en forespørgsel.
  • Da DDL-kommandoer er auto-committed, er ændringer permanente og kan ikke tilbageføres. DML-udsagn er på den anden side ikke auto-committet, hvilket betyder, at ændringer ikke er permanente og kan vendes.
  • DML er en imperativ og proceduremæssig metode, mens DDL er en deklarativ metode.
  • Dataene i DML-sætninger kan filtreres med en WHERE-sætning, mens posterne i DDL-sætninger ikke kan filtreres med en WHERE-sætning.

DDL vs. DML sammenligningsdiagram

Følgende sammenligningsdiagram forklarer deres vigtigste forskelle på en hurtig måde:

Sammenligningsgrundlag DDL DML
Grundlæggende Det hjælper os med at definere en databases struktur eller skema og behandler, hvordan data lagres i databasen. Det giver os mulighed for at manipulere, dvs. hente, opdatere og slette de data, der er gemt i databasen.
Fuld form Den fulde form for DDL er Data Definition Language. Den fulde form for DML er Data Manipulation Language.
Kategorisering DDL-kommandoerne har ingen yderligere klassifikation. DML-kommandoerne er klassificeret som proceduremæssige og ikke-proceduremæssige (deklarative) DML'er.
Kommando bruger De almindeligt anvendte kommandoer under DDL-sprog er:
  • SKAB
  • DRÅBE
  • ÆNDRE
  • TRUNCATE
  • OMDØB
De almindeligt anvendte kommandoer under DML-sprog er:
  • INDSÆT
  • OPDATERING
  • SLET
  • VÆLG
Auto-commit DDL-kommandoer er auto-committet, så ændringer, der sker i databasen, vil være permanente. DML-kommandoer er ikke auto-committeret, så databaseændringer er ikke permanente.
Rul tilbage DDL-kommandoer gjorde ændringer permanente; derfor kan vi ikke rulle disse udsagn tilbage. DML-kommandoer gør ikke ændringer permanente; derfor er rollback mulig for disse udsagn.
WHERE-klausul DDL-kommandoer har ingen brug af en WHERE-sætning, fordi her er filtrering af poster ikke mulig. DML-sætningerne kan bruge en WHERE-sætning, mens de manipulerer data i en database.
Effekt DDL-kommandoen påvirker hele databasen eller tabellen. DML-kommandoerne vil påvirke de enkelte eller flere poster baseret på den angivne tilstand.

Konklusion

I denne artikel har vi lavet en sammenligning mellem DDL- og DML-kommandoer. Her har vi konkluderet, at for at danne en database, er begge sprog nødvendige for at danne og få adgang til databasen. Når vi håndterer en omfattende database, skal du sørge for, at vi har nævnt betingelsen korrekt, fordi den kan slette hele databasen eller tabellen.