Differenza tra DDL e comando DML in DBMS: cos’è?

Che cos’è DDL?

Data Definition Language ti aiuta a definire la struttura del database o schema. I comandi DDL aiutano a creare la struttura del database e gli altri oggetti del database. I suoi comandi sono auto-committenti, quindi le modifiche vengono salvate nel database in modo permanente. La forma completa di DDL è Data Definition Language.

In questo tutorial sulla differenza tra DML e DDL, imparerete:

  • Che cos’è il DDL?
  • Che cos’è DML?
  • Perché DDL?
  • Perché DML?
  • Differenza tra DDL e DML nel DBMS
  • Comandi per DDL
  • Comandi per DML
  • Esempio di comando DDL
  • Esempio di comando DML

Cos’è il DML?

I comandi DML ti permettono di gestire i dati memorizzati nel database, sebbene i comandi DML non siano auto-committed. Inoltre, non sono permanenti. Quindi, è possibile annullare l’operazione. La forma completa di DML è Data Manipulation Language.

Di seguito è riportata la differenza chiave tra DDL e DML nei DBMS:

SIMILI DIFFERENZE:

  • Data Definition Language (DDL) vi aiuta a definire la struttura del database o schema mentre Data Manipulation language (comando DML) vi permette di gestire i dati memorizzati nel database.
  • Il comando DDL è usato per creare lo schema del database mentre il comando DML è usato per popolare e manipolare il database
  • Confrontando DDL con DML, le istruzioni DDL influenzano l’intera tabella mentre i comandi DML influenzano solo una o più righe.
  • Nel DDL, l’istruzione SQL non può essere rollbackata mentre nel DML l’istruzione SQL può essere rollbackata.
  • DDL è un metodo dichiarativo mentre DML è un metodo imperativo.
  • I comandi DDL importanti sono: 1) CREATE, 2) ALTER, 3) DROP, 4) TRUNCATE, ecc. mentre i comandi DML importanti sono: 1) INSERT, 2) UPDATE, 3) DELETE, 4) MERGE, ecc.

Perché DDL?

Qui ci sono ragioni per usare il metodo DDL:

  • Consente di memorizzare dati condivisi
  • Indipendenza dei dati migliore integrità
  • Consente a più utenti
  • Miglioramento della sicurezza accesso efficiente ai dati

Perché DML?

Qui, benefici/profitti di DML:

  • Le dichiarazioni DML permettono di modificare i dati memorizzati in un database.
  • Gli utenti possono specificare quali dati sono necessari.
  • DML offre molti gusti e capacità diverse tra i fornitori di database.
  • Offre un’efficiente interazione umana con il sistema.

Differenza tra DDL e DML nei DBMS

DDL vs DML

Ecco la principale differenza tra i comandi DDL e DML:

DDL DML
Data Definition Language (DDL) aiuta a definire la struttura del database o schema. Data Manipulation Language (comando DML) vi permette di gestire i dati memorizzati nel database.
Il comando DDL è usato per creare lo schema del database. Il comando DML è usato per popolare e manipolare il database
DDL non è classificato ulteriormente. DML è classificato come DML procedurale e non procedurale.
CREATE, ALTER, DROP, TRUNCATE AND COMMENT e RENAME, ecc. INSERT, UPDATE, DELETE, MERGE, CALL, ecc.
Definisce la colonna della tabella. Aggiunge o aggiorna la riga della tabella
Le istruzioni DLD influiscono sull’intera tabella. DML ha effetto su una o più righe.
L’istruzione SQL non può essere un rollback L’istruzione SQL può essere un rollback
DDL è dichiarativa. DML è imperativo.

Comandi per DDL

Cinque tipi di comandi DDL sono:

CREATE

Le istruzioni Create sono usate per definire lo schema della struttura del database:

Sintassi:

CREATE TABLE TABLE_NAME (COLUMN_NAME DATATYPES); 

Per esempio:

Create database university;Create table students;Create view for_students;

DROP

I comandi Drops rimuovono tabelle e database da RDBMS.

Sintassi:

DROP TABLE ; 

Per esempio:

Drop object_type object_name;Drop database university;Drop table student;

ALTER

Il comandoAlters permette di modificare la struttura del database.

Sintassi:

Per aggiungere una nuova colonna nella tabella

ALTER TABLE table_name ADD column_name COLUMN-definition; 

Per modificare una colonna esistente nella tabella:

ALTER TABLE MODIFY(COLUMN DEFINITION....); 

Per esempio:

Alter table guru99 add subject varchar;

TRUNCATE:

Questo comando serve per eliminare tutte le righe dalla tabella e liberare lo spazio che contiene la tabella.

Sintassi:

TRUNCATE TABLE table_name; 

Esempio:

TRUNCATE table students;

Comandi per DML

Ecco alcuni importanti comandi DML:

  • INSERT
  • UPDATE
  • DELETE

INSERT:

Questa è una dichiarazione che è una query SQL. Questo comando è usato per inserire dati nella riga di una tabella.

Sintassi:

INSERT INTO TABLE_NAME (col1, col2, col3,.... col N) VALUES (value1, value2, value3, .... valueN); Or INSERT INTO TABLE_NAME VALUES (value1, value2, value3, .... valueN); 

Per esempio:

INSERT INTO students (RollNo, FIrstName, LastName) VALUES ('60', 'Tom', 'Erichsen');

UPDATE:

Questo comando è usato per aggiornare o modificare il valore di una colonna nella tabella.

Sintassi:

UPDATE table_name SET 

Per esempio:

UPDATE students SET FirstName = 'Jhon', LastName=' Wick' WHERE StudID = 3;

DELETE:

Questo comando è usato per rimuovere una o più righe da una tabella.

Sintassi:

DELETE FROM table_name ;

Per esempio:

DELETE FROM students WHERE FirstName = 'Jhon';

Esempio di comando DDL

CREATE

Sintassi:

CREATE TABLE tableName( column_1 datatype , column_2 datatype , ...);

Qui,

  • Il parametro tableName indica il nome della tabella che state per creare.
  • I parametri column_1, column_2… indicano le colonne da aggiungere alla tabella.
  • Una colonna dovrebbe essere specificata come NULL o NOT NULL. Se non si specifica, SQL Server prenderà NULL come predefinito

Esempio:

CREATE TABLE Students(Student_ID Int,Student_Name Varchar(10))

ALTER

Sintassi:

Alter TABLE <Table name> ADD Column1 datatype, Column2 datatype;

Esempio:

ALTER TABLE University.Students_Name ADD Course_Duration VARCHAR(20);

DROP

Sintassi:

DROP TABLE <tableName>;

Il parametro tableName è il nome della tabella da cancellare.

Esempio:

DROP TABLE COURSE_NAMES;

Esempio di comando DML

INSERT

In PL/SQL, possiamo inserire i dati in qualsiasi tabella usando il comando SQL INSERT INTO. Questo comando prenderà il nome della tabella, la colonna della tabella e i valori della colonna come input e inserirà il valore nella tabella base.

Il comando INSERT può anche prendere i valori direttamente da un’altra tabella usando l’istruzione ‘SELECT’ piuttosto che dare i valori per ogni colonna. Attraverso l’istruzione ‘SELECT’, possiamo inserire tante righe quante ne contiene la tabella base.

Sintassi:

BEGIN INSERT INTO <table_name>(<column1 >,<column2>,...<column_n>) VALUES(<valuel><value2>,...:<value_n>);END;

La sintassi sopra mostra il comando INSERT INTO. Il nome della tabella e i valori sono campi obbligatori, mentre i nomi delle colonne non sono obbligatori se le istruzioni di inserimento hanno valori per tutte le colonne della tabella.

La parola chiave ‘VALUES’ è obbligatoria se i valori sono dati separatamente, come mostrato sopra.

Sintassi:

BEGIN INSERT INTO <table_name>(<columnl>,<column2>,...,<column_n>) SELECT <columnl>,<column2>,.. <column_n> FROM <table_name2>;END;

La sintassi sopra mostra il comando INSERT INTO che prende i valori direttamente dalla <tabella_nome2> usando il comando SELECT.

La parola chiave ‘VALUES’ non dovrebbe essere presente in questo caso, poiché i valori non sono dati separatamente.

DELETE

Di seguito la sintassi per cancellare la tabella

Sintassi:

DROP TABLE <TableName>;

Il parametro TableName è il nome della tabella da cancellare.

Esempio:

DROP TABLE COURSE_NAMES;

SELECT

Per visualizzare i dati in SQL Server, usiamo l’istruzione SELECT.

Sintassi:

SELECT expressionFROM tableName;

Esempio:

SELECT * FROM Course;

Lascia un commento

Il tuo indirizzo email non sarà pubblicato.