Forskellen mellem DDL og DML i DBMS
Nøgleforskelle mellem DDL vs DML
- Data Definition Language (DDL) hjælper dig med at definere databasestrukturen eller skemaet, mens Data Manipulation Language (DML-kommando) giver dig mulighed for at administrere de data, der er gemt i databasen.
- DDL-kommandoen bruges til at oprette databaseskemaet, mens DML-kommandoen bruges til at udfylde og manipulere databasen
- Ved at sammenligne DDL vs DML påvirker DDL-sætninger hele tabellen, mens DML-kommandoer kun påvirker en eller flere rækker.
- I DDL kan SQL Statement ikke rulles tilbage, mens SQL Statement kan rollback i DML.
- DDL er en deklarativ metode, mens DML er en imperativ metode.
- Vigtige DDL-kommandoer er: 1) CREATE, 2) ALTER, 3) DROP, 4) TRUNCATE, osv., mens vigtige DML-kommandoer er: 1) INSERT, 2) UPDATE, 3) DELETE, 4) FLOT osv.

Her har jeg analyseret forskellen mellem DDL og DML og vil grundigt vurdere deres fordele og ulemper.
Hvad er DDL?
Data Definition Language hjælper dig med at definere databasestrukturen eller skemaet. DDL-kommandoer hjælper dig med at skabe strukturen af databasen og de andre databaseobjekter. Dens kommandoer er auto-committed, så ændringerne gemmes permanent i databasen. Den fulde form for DDL er Data Definition Language.
DDL kommandoer
Fem typer DDL-kommandoer er:
SKAB
CREATE-sætninger bruges til at definere databasestrukturskemaet:
Syntaks:
CREATE TABLE TABLE_NAME (COLUMN_NAME DATATYPES[,....]);
For eksempel:
Create database university; Create table students; Create view for_students;
DROP
Drops-kommandoer fjerner tabeller og databaser fra RDBMS.
Syntaks:
DROP TABLE ;
For eksempel:
Drop object_type object_name; Drop database university; Drop table student;
ÆNDRE
Alters-kommandoen giver dig mulighed for at ændre strukturen af database.
Syntaks:
For at tilføje en ny kolonne i tabellen
ALTER TABLE table_name ADD column_name COLUMN-definition;
Sådan ændrer du en eksisterende kolonne i tabellen:
ALTER TABLE MODIFY(COLUMN DEFINITION....);
For eksempel:
Alter table guru99 add subject varchar;
afkorte
Denne kommando bruges til at slette alle rækker fra tabellen og frigøre pladsen, der indeholder tabellen.
Syntaks:
TRUNCATE TABLE table_name;
Eksempel:
TRUNCATE table students;
Eksempel på DDL-kommando
SKAB
Syntaks:
CREATE TABLE tableName ( column_1 datatype [ NULL | NOT NULL ], column_2 datatype [ NULL | NOT NULL ], ... );
Her,
- Parameteren tableName angiver navnet på den tabel, du vil oprette.
- Parametrene column_1, column_2… angiver de kolonner, der skal tilføjes til tabellen.
- En kolonne skal angives som enten NULL eller NOT NULL. Hvis du ikke specificerer, SQL Server vil tage NULL som standard
Eksempel:
CREATE TABLE Students ( Student_ID Int, Student_Name Varchar(10) )
ÆNDRE
Syntaks:
Alter TABLE <Table name> ADD Column1 datatype, Column2 datatype;
Eksempel:
ALTER TABLE University.Students_Name ADD Course_Duration VARCHAR(20);
DROP
Syntaks:
DROP TABLE <tableName>;
Parameteren tableName er navnet på den tabel, der skal slettes.
Eksempel:
DROP TABLE COURSE_NAMES;
Hvorfor bruger vi DDL-kommandoer?
Her vil jeg forklare, hvorfor vi foretrækker DDL-metoden:
- Giver dig mulighed for at gemme delte data
- Datauafhængighed forbedret integritet
- Tillader flere brugere
- Forbedret sikkerhedseffektiv dataadgang
Hvad er DML?
DML kommanderer det til at give dig mulighed for at administrere de data, der er gemt i databasen, selvom DML-kommandoer ikke er auto-committet. Desuden er de ikke permanente. Så det er muligt at rulle operationen tilbage. Den fulde form for DML er Data Manipulation Language.
DML kommandoer
Jeg vil gerne fremhæve nogle vigtige DML-kommandoer:
- INSERT
- OPDATER
- SLET
INSERT
Dette er en sætning, der er en SQL-forespørgsel. Denne kommando bruges til at indsætte data i rækken af en tabel.
Syntaks:
INSERT INTO TABLE_NAME (col1, col2, col3,.... col N) VALUES (value1, value2, value3, .... valueN); Or INSERT INTO TABLE_NAME VALUES (value1, value2, value3, .... valueN);
For eksempel:
INSERT INTO students (RollNo, FIrstName, LastName) VALUES ('60', 'Tom', 'Erichsen');
OPDATER
Denne kommando bruges til at opdatere eller ændre værdien af en kolonne i tabellen.
Syntaks:
UPDATE table_name SET [column_name1= value1,...column_nameN = valueN] [WHERE CONDITION]
For eksempel:
UPDATE students SET FirstName = 'Jhon', LastName=' Wick' WHERE StudID = 3;
SLET
Denne kommando bruges til at fjerne en eller flere rækker fra en tabel.
Syntaks:
DELETE FROM table_name [WHERE condition];
For eksempel:
DELETE FROM students WHERE FirstName = 'Jhon';
Eksempel på DML-kommando
INSERT
In PL / SQL, kan vi indsætte dataene i enhver tabel ved hjælp af SQL kommando INSERT INTO. Denne kommando tager tabelnavnet, tabelkolonnen og kolonneværdierne som input og indsætter værdien i basistabellen.
INSERT-kommandoen kan også tage værdierne direkte fra en anden tabel ved at bruge 'SELECT'-sætningen i stedet for at angive værdierne for hver kolonne. Gennem 'SELECT'-sætningen kan vi indsætte lige så mange rækker, som basistabellen indeholder.
Syntaks:
BEGIN INSERT INTO <table_name>(<column1 >,<column2>,...<column_n>) VALUES(<valuel><value2>,...:<value_n>); END;
Ovenstående syntaks viser kommandoen INSERT INTO. Tabelnavnet og værdierne er obligatoriske felter, hvorimod kolonnenavne ikke er obligatoriske, hvis insert-sætningerne har værdier for alle kolonnerne i tabellen.
Søgeordet 'VÆRDI' er obligatorisk, hvis værdierne er angivet separat, som vist ovenfor.
Syntaks:
BEGIN INSERT INTO <table_name>(<columnl>,<column2>,...,<column_n>) SELECT <columnl>,<column2>,.. <column_n> FROM <table_name2>; END;
Ovenstående syntaks viser kommandoen INSERT INTO, der tager værdierne direkte fra ved hjælp af SELECT-kommandoen.
Nøgleordet 'VÆRDI' bør ikke være til stede i dette tilfælde, da værdierne ikke er angivet separat.
SLET
Nedenfor er tabellen Syntaks til sletning
Syntaks:
DROP TABLE <TableName>;
Parameteren TableName er navnet på den tabel, der skal slettes.
Eksempel:
DROP TABLE COURSE_NAMES;
SELECT
For at se data i SQL Server bruger vi SELECT-sætningen.
Syntaks:
SELECT expression FROM tableName [WHERE condition];
Eksempel:
SELECT * FROM Course;
Hvorfor bruger vi DML-kommandoer?
Her er fordelene ved DML, med udgangspunkt i vores samlede erfaring:
- DML-sætningerne giver dig mulighed for at ændre de data, der er gemt i en database.
- Brugere kan angive, hvilke data der er nødvendige.
- DML tilbyder mange forskellige varianter og muligheder mellem databaseleverandører.
- Det giver en effektiv menneskelig interaktion med systemet.
Forskellen mellem DDL og DML i DBMS
Lad mig forklare hovedforskellen mellem DDL- og DML-kommandoer i DBMS:

Sammenligningsgrundlag | DDL | DML |
---|---|---|
Grundlæggende | Data Definition Language (DDL) hjælper dig med at definere databasestrukturen eller skemaet. | Data Manipulation Language (DML-kommando) giver dig mulighed for at administrere de data, der er gemt i databasen. |
Brug | DDL-kommandoen bruges til at oprette databaseskemaet. | DML-kommando bruges til at udfylde og manipulere database |
Kategorisering | DDL er ikke klassificeret yderligere. | DML er klassificeret som proceduremæssige og ikke- og proceduremæssige DML'er. |
Kommandoanvendelser |
De almindeligt anvendte kommandoer under DDL-sproget er:
|
De almindeligt anvendte kommandoer under DML-sprog er:
|
definerer | Det definerer kolonnen i tabellen. | Det tilføjer eller opdaterer rækken i tabellen |
Effekt | DDL-udsagn påvirker hele tabellen. | DML påvirker en eller flere rækker. |
Tilbagerulning | SQL-sætningen kan ikke rulles tilbage | SQL Statement kan være en rollback |
Sådan vælger du mellem en DDL og en DML
Vi observerer, at mens DDL bruges til at definere strukturen af databasen, handler DML om dataene indeni, som hver især tjener kritiske roller.