Rozdíl mezi DDL a DML v DBMS
Klíčové rozdíly mezi DDL a DML
- Data Definition Language (DDL) vám pomáhá definovat strukturu databáze nebo schéma, zatímco Data Manipulation Language (příkaz DML) umožňuje spravovat data uložená v databázi.
- Příkaz DDL se používá k vytvoření schématu databáze, zatímco příkaz DML se používá k naplnění databáze a manipulaci s ní.
- Při porovnání DDL a DML ovlivňují příkazy DDL celou tabulku, zatímco příkazy DML ovlivňují pouze jeden nebo více řádků.
- V DDL nelze příkaz SQL vrátit zpět, zatímco v DML lze příkaz SQL vrátit zpět.
- DDL je deklarativní metoda, zatímco DML je imperativní metoda.
- Důležité příkazy DDL jsou: 1) CREATE, 2) ALTER, 3) DROP, 4) TRUNCATE atd., zatímco důležité příkazy DML jsou: 1) INSERT, 2) UPDATE, 3) DELETE, 4) MERGE atd.
Zde jsem rozebral rozdíl mezi DDL a DML a komplexně zhodnotím jejich klady a zápory.
Co je DDL?
Data Definition Language vám pomůže definovat strukturu databáze nebo schéma. Příkazy DDL vám pomohou vytvořit strukturu databáze a dalších databázových objektů. Jeho příkazy jsou automaticky zadávány, takže změny jsou trvale uloženy v databázi. Plná forma DDL je Data Definition Language.
Příkazy DDL
Pět typů příkazů DDL je:
CREATE
Příkazy CREATE se používají k definování schématu struktury databáze:
Syntaxe:
CREATE TABLE TABLE_NAME (COLUMN_NAME DATATYPES[,....]);
Například:
Create database university; Create table students; Create view for_students;
DROP
Příkazy Drops odstraní tabulky a databáze RDBMS.
Syntaxe:
DROP TABLE ;
Například:
Drop object_type object_name; Drop database university; Drop table student;
ALTER
Příkaz Alters umožňuje změnit strukturu souboru databáze.
Syntaxe:
Přidání nového sloupce do tabulky
ALTER TABLE table_name ADD column_name COLUMN-definition;
Chcete-li upravit existující sloupec v tabulce:
ALTER TABLE MODIFY(COLUMN DEFINITION....);
Například:
Alter table guru99 add subject varchar;
Zkrátit
Tento příkaz se používá k odstranění všech řádků z tabulky a uvolnění místa obsahujícího tabulku.
Syntaxe:
TRUNCATE TABLE table_name;
Příklad:
TRUNCATE table students;
Příklad příkazu DDL
CREATE
Syntaxe:
CREATE TABLE tableName ( column_1 datatype [ NULL | NOT NULL ], column_2 datatype [ NULL | NOT NULL ], ... );
Zde,
- Parametr tableName označuje název tabulky, kterou se chystáte vytvořit.
- Parametry column_1, column_2… označují sloupce, které mají být přidány do tabulky.
- Sloupec by měl být zadán jako NULL nebo NOT NULL. Pokud neuvedete, SQL Server bude mít jako výchozí hodnotu NULL
Příklad:
CREATE TABLE Students ( Student_ID Int, Student_Name Varchar(10) )
ALTER
Syntaxe:
Alter TABLE <Table name> ADD Column1 datatype, Column2 datatype;
Příklad:
ALTER TABLE University.Students_Name ADD Course_Duration VARCHAR(20);
DROP
Syntaxe:
DROP TABLE <tableName>;
Parametr tableName je název tabulky, která má být odstraněna.
Příklad:
DROP TABLE COURSE_NAMES;
Proč používáme příkazy DDL?
Zde vysvětlím, proč preferujeme metodu DDL:
- Umožňuje ukládat sdílená data
- Nezávislost na datech zlepšila integritu
- Umožňuje více uživatelů
- Vylepšené zabezpečení efektivní přístup k datům
Co je DML?
Příkazy DML vám umožňují spravovat data uložená v databázi, ačkoli příkazy DML nejsou automaticky zadávány. Navíc nejsou trvalé. Je tedy možné operaci vrátit zpět. Plná forma DML je Data Manipulation Language.
DML příkazy
Rád bych zdůraznil některé důležité příkazy DML:
- INSERT
- UPDATE
- DELETE
INSERT
Toto je příkaz, který je SQL dotazem. Tento příkaz se používá k vložení dat do řádku tabulky.
Syntaxe:
INSERT INTO TABLE_NAME (col1, col2, col3,.... col N) VALUES (value1, value2, value3, .... valueN); Or INSERT INTO TABLE_NAME VALUES (value1, value2, value3, .... valueN);
Například:
INSERT INTO students (RollNo, FIrstName, LastName) VALUES ('60', 'Tom', 'Erichsen');
UPDATE
Tento příkaz se používá k aktualizaci nebo úpravě hodnoty sloupce v tabulce.
Syntaxe:
UPDATE table_name SET [column_name1= value1,...column_nameN = valueN] [WHERE CONDITION]
Například:
UPDATE students SET FirstName = 'Jhon', LastName=' Wick' WHERE StudID = 3;
DELETE
Tento příkaz se používá k odstranění jednoho nebo více řádků z tabulky.
Syntaxe:
DELETE FROM table_name [WHERE condition];
Například:
DELETE FROM students WHERE FirstName = 'Jhon';
Příklad příkazu DML
INSERT
In PL / SQL, můžeme vložit data do libovolné tabulky pomocí SQL příkaz INSERT INTO. Tento příkaz vezme jako vstup název tabulky, sloupec tabulky a hodnoty sloupců a vloží hodnotu do základní tabulky.
Příkaz INSERT může také převzít hodnoty přímo z jiné tabulky pomocí příkazu 'SELECT' namísto zadávání hodnot pro každý sloupec. Prostřednictvím příkazu 'SELECT' můžeme vložit tolik řádků, kolik obsahuje základní tabulka.
Syntaxe:
BEGIN INSERT INTO <table_name>(<column1 >,<column2>,...<column_n>) VALUES(<valuel><value2>,...:<value_n>); END;
Výše uvedená syntaxe ukazuje příkaz INSERT INTO. Název tabulky a hodnoty jsou povinná pole, zatímco názvy sloupců nejsou povinné, pokud příkazy insert obsahují hodnoty pro všechny sloupce tabulky.
Klíčové slovo 'VALUES' je povinné, pokud jsou hodnoty uvedeny samostatně, jak je uvedeno výše.
Syntaxe:
BEGIN INSERT INTO <table_name>(<columnl>,<column2>,...,<column_n>) SELECT <columnl>,<column2>,.. <column_n> FROM <table_name2>; END;
Výše uvedená syntaxe ukazuje příkaz INSERT INTO, který přebírá hodnoty přímo z pomocí příkazu SELECT.
Klíčové slovo 'VALUES' by v tomto případě nemělo být přítomno, protože hodnoty nejsou uvedeny samostatně.
DELETE
Níže je uvedena syntaxe pro odstranění tabulky
Syntaxe:
DROP TABLE <TableName>;
Parametr TableName je název tabulky, která má být odstraněna.
Příklad:
DROP TABLE COURSE_NAMES;
SELECT
Pro zobrazení dat na SQL Serveru používáme příkaz SELECT.
Syntaxe:
SELECT expression FROM tableName [WHERE condition];
Příklad:
SELECT * FROM Course;
Proč používáme příkazy DML?
Zde, čerpající z našich společných zkušeností, jsou výhody DML:
- Příkazy DML umožňují upravovat data uložená v databázi.
- Uživatelé mohou specifikovat, jaká data jsou potřebná.
- DML nabízí mnoho různých variant a možností mezi dodavateli databází.
- Nabízí efektivní interakci člověka se systémem.
Rozdíl mezi DDL a DML v DBMS
Dovolte mi vysvětlit hlavní rozdíl mezi příkazy DDL a DML DBMS:
Srovnávací základ | DDL | DML |
---|---|---|
Basic | Data Definition Language (DDL) vám pomůže definovat strukturu databáze nebo schéma. | Data Manipulation Language (příkaz DML) umožňuje spravovat data uložená v databázi. |
Použijte | Příkaz DDL se používá k vytvoření schématu databáze. | Příkaz DML se používá k naplnění databáze a manipulaci s ní |
Kategorizace | DDL není dále klasifikován. | DML je klasifikováno jako procedurální a neprocedurální a procedurální DML. |
Příkaz používá |
Běžně používané příkazy v jazyce DDL jsou:
|
Běžně používané příkazy v jazyce DML jsou:
|
Definuje | Definuje sloupec tabulky. | Přidá nebo aktualizuje řádek tabulky |
Účinek | Příkazy DDL ovlivňují celou tabulku. | DML ovlivňuje jeden nebo více řádků. |
Rollback | Příkaz SQL nelze vrátit zpět | Příkaz SQL může být vrácením zpět |
Jak si vybrat mezi DDL a DML
Všimli jsme si, že zatímco DDL se používá k definování struktury databáze, DML se týká pouze dat uvnitř, z nichž každá slouží kritickým rolím.