Rozdíl mezi DDL vs DML
V systému správy relačních databází (RDBMS) se obrovské množství dat uloží do tabulek. Tyto tabulky jsou shromažďováním souvisejících dat, kde se data ukládají mezi řádky a sloupce. Tento způsob ukládání dat umožňuje efektivní použití, když se objeví požadavek. Je velmi důležité přistupovat k datům z těchto tabulek, aby bylo možné je použít pro obchodní požadavky, a také v případě potřeby upravit existující data obsažená v databázi. K načtení dat nebo manipulaci s daty potřebujeme strukturovaný dotazovací jazyk (SQL). SQL přichází se standardními příkazy pro interakci s RDBMS. Data Definition Language (DDL) se používá k definování databázového schématu a Data Manipulation Language (DML) se používá k manipulaci s daty, která již v databázi existují. V tomto tématu se dozvíme o DDL vs DM. V tomto tématu se budeme učit o DDL vs DML.
Srovnání hlava-hlava mezi DDL vs DML (infografika)
Níže jsou uvedeny hlavní rozdíly mezi DDL a DML
Klíčové rozdíly mezi DDL a DML
Hlavní rozdíly mezi DDL a DML jsou uvedeny níže:
- Jedním z důležitých rozdílů mezi DDL a DML je to, že Data Definition Language (DDL) definuje schéma databáze, zatímco Data Manipulation Language (DML) se používá k úpravě schématu databáze.
- Příkazy DDL jsou CREATE, ALTER, DROP, TRUNCATE atd., Zatímco příkazy DML jsou INSERT, UPDATE, DELETE, SELECT atd.
- Příkazy DDL pracují v celé tabulce, zatímco příkazy DML fungují v řádcích.
- Příkazy DDL nemají klauzuli WHERE pro filtrování dat, zatímco příkazy DML používají klauzuli WHERE pro filtrování dat.
- Příkazy DDL jsou provedeny v jejich transakcích, a tak se okamžitě zavázejte, protože změny provedené každým z těchto příkazů jsou trvalé. Ale protože příkazy DML fungují úpravou dat databázových objektů, jsou tyto příkazy prováděny v souladu s pravidly transakce.
- Při použití příkazů DDL nemohou být provedené změny vráceny zpět. Nemusíme tedy spouštět příkaz COMMIT nebo ROLLBACK, zatímco v příkazech DML by příkazy COMMIT a ROLLBACK měly být spuštěny pro potvrzení změn.
Srovnávací tabulka DDL vs. DML
Pojďme diskutovat o šesti největších rozdílech mezi DDL a DML
DDL (Data Definition Language) | DML (Data Manipulation Language) |
Data Definition Language se používá k definování schématu databáze. Zabývá se tím, jak se data ukládají do databáze. | Jazyk pro manipulaci s daty se používá k manipulaci, tj. K získání, aktualizaci a odstranění dat v databázi. |
Příkazy DDL používané v SQL jsou CREATE, DROP, ALTER, TRUNCATE atd. | Příkazy DML používané v SQL jsou INSERT, UPDATE, DELETE, SELECT atd. |
Příkaz CREATE se používá k vytvoření tabulky nebo zobrazení tabulky. Může být také použit k vytvoření dalších objektů databáze, jako je index, uložená procedura, triggery atd.
Syntaxe pro vytvoření tabulky je následující: CREATE TABLE table_name ( Datový typ COLUMN_1 PRIMARY KEY, Datový typ COLUMN_2, Datový typ COLUMN_3, …… ); | Příkaz INSERT slouží k vložení dat do tabulky.
Syntaxe pro vložení dat do tabulky je následující: INSERT INTO název_tabulky (sloupec_1, sloupec_2, … sloupec_N) HODNOTY (hodnota1, hodnota2… hodnotaN); |
Příkaz ALTER se používá k úpravě stávající struktury tabulky nebo databázových objektů.
Syntaxe pro použití příkazu ALTER je následující: ALTER TABLE table_name RENAME TO table_name_new; | Příkaz UPDATE se používá k aktualizaci existujících dat v tabulce.
Syntaxe pro použití příkazu UPDATE je následující: UPDATE table_name SET column1 = value1, column2 = value2, … columnN = valueN WHERE (podmínka); |
Příkaz DROP se používá k odstranění tabulky nebo zobrazení tabulky nebo jiných databázových objektů. Příkaz DROP odstraní data i definici tabulky. Tento příkaz by tedy měl být používán opatrně.
Syntaxe pro zrušení databáze je následující: DROP DATABASE database_name; Syntaxe pro zrušení tabulky je následující: DROP TABLE název_tabulky; | Příkaz DELETE se používá k odstranění záznamů z tabulky.
Syntaxe pro použití příkazu DELETE je následující: ODSTRANIT Z tabulky název_tabulky; Ve výše uvedené syntaxi budou odstraněny všechny řádky tabulky, ale struktura tabulky zůstane. Pokud ale použijeme příkaz DELETE spolu s klauzulí WHERE, budou smazány pouze konkrétní záznamy podle klauzule WHERE. Syntaxe příkazu DELETE spolu s klauzulí WHERE je následující: ODSTRANIT OD název_tabulky WHERE (podmínka); |
Příkaz TRUNCATE se používá k odebrání dat z tabulky, ale struktura tabulky zůstává nedotčena. Tímto příkazem se tedy smažou pouze data, nikoli tabulka.
Syntaxe příkazu TRUNCATE je následující: TRUNCATE TABLE table_name; | Příkaz SELECT se používá k načtení dat z tabulek v databázi.
Syntaxe pro použití příkazu SELECT je následující: VYBRAT sloupec1, sloupec2… sloupecN OD tabulky název_tabulky; Výše uvedený příkaz vybere sloupce určené v příkazu select. Ale když chceme vybrat všechny sloupce tabulky, musíme v příkazu select použít „*“. Syntaxe pro výběr všech sloupců tabulky je následující: SELECT * FROM název_tabulky; |
Závěr
SQL poskytuje flexibilitu při definování schématu a jeho úpravě podle požadavku v databázi pomocí jazyka pro definici dat a jazyka pro manipulaci s daty. S použitím jednoduchých příkazů DDL je pro vývojáře snazší definovat schéma databáze, strukturu tabulky pro velké množství dat. Také s použitím příkazů DML můžeme data manipulovat, tj. Načíst data, upravit stávající data atd., Kdykoli to bude potřeba. Při práci s různými příkazy DDL a DML je třeba mít na paměti určité důležité body. Vývojář softwaru nebo návrhář musí důkladně porozumět fungování různých operací DDL a DML, protože hrají zásadní roli při vytváření efektivní databáze, jak to vyžaduje podnikání.
Doporučené články
Toto je průvodce DDL Vs DML. Zde diskutujeme podrobně o DDL vs DML s příslušnými klíčovými rozdíly, infografiky a srovnávací tabulkou. Další informace naleznete také v následujících článcích -
- Úl vs HUE: Top 6 užitečných srovnání, které je třeba se naučit
- WebLogic vs JBoss
- SQL Server vs PostgreSQL
- PL SQL vs SQL