Czym jest DDL?
Data Definition Language pomaga zdefiniować strukturę bazy danych lub schemat. Polecenia DDL pomagają w tworzeniu struktury bazy danych i innych obiektów bazy danych. Polecenia DDL są automatycznie wysyłane, więc zmiany są zapisywane w bazie danych na stałe. Pełna forma DDL to Data Definition Language.
W tym poradniku dowiesz się, jaka jest różnica między DML i DDL:
- Co to jest DDL?
- Co to jest DML?
- Dlaczego DDL?
- Dlaczego DML?
- Różnica między DDL i DML w DBMS
- Polecenia dla DDL
- Polecenia dla DML
- Przykład polecenia DDL
- Przykład polecenia DML
Co to jest DML?
Polecenia DML to umożliwienie zarządzania danymi przechowywanymi w bazie danych, chociaż polecenia DML nie są auto-komisyjne. Co więcej, nie są one trwałe. Istnieje więc możliwość cofnięcia operacji. Pełna forma DML to Data Manipulation Language.
Poniżej przedstawiono kluczowe różnice między DDL i DML w DBMS:
KEY DIFFERENCES:
- Data Definition Language (DDL) pomaga zdefiniować strukturę bazy danych lub schemat, podczas gdy Data Manipulation language (polecenie DML) pozwala zarządzać danymi przechowywanymi w bazie danych.
- Polecenie DDL jest używane do tworzenia schematu bazy danych, podczas gdy polecenie DML jest używane do wypełniania i manipulowania bazą danych
- Porównując DDL vs DML, polecenia DDL wpływają na całą tabelę, podczas gdy polecenia DML wpływają tylko na jeden lub więcej wierszy.
- W DDL, SQL Statement nie może być cofnięty, podczas gdy w DML SQL Statement może być cofnięty.
- DDL jest metodą deklaratywną, podczas gdy DML jest metodą imperatywną.
- Ważne polecenia DDL to: 1) CREATE, 2) ALTER, 3) DROP, 4) TRUNCATE, itp. natomiast ważne polecenia DML to: 1) INSERT, 2) UPDATE, 3) DELETE, 4) MERGE, etc.
Dlaczego DDL?
Oto powody, dla których warto używać metody DDL:
- Pozwala na przechowywanie współdzielonych danych
- Niezależność danych poprawiona integralność
- Pozwala na wielu użytkowników
- Poprawione bezpieczeństwo efektywny dostęp do danych
Dlaczego DML?
Tutaj korzyści/zalety DML:
- Deklaracje DML pozwalają modyfikować dane przechowywane w bazie danych.
- Użytkownicy mogą określić, jakie dane są potrzebne.
- DML oferuje wiele różnych smaków i możliwości pomiędzy sprzedawcami baz danych.
- Oferuje efektywną interakcję człowieka z systemem.
Różnica między DDL i DML w DBMS
Tutaj jest główna różnica między poleceniami DDL i DML:
DDL | DML |
Data Definition Language (DDL) pomaga zdefiniować strukturę bazy danych lub schemat. | Język manipulacji danymi (polecenie DML) umożliwia zarządzanie danymi przechowywanymi w bazie danych. |
PolecenieDDL jest używane do tworzenia schematu bazy danych. | Polecenie DML jest używane do wypełniania bazy danych i manipulowania nią |
DDL nie jest dalej klasyfikowane. | DML jest sklasyfikowany jako proceduralny i nie proceduralny DML. |
CREATE, ALTER, DROP, TRUNCATE AND COMMENT i RENAME, itp. | INSERT, UPDATE, DELETE, MERGE, CALL, itp. |
Definiuje kolumnę tabeli. | Dodaje lub aktualizuje wiersz tabeli |
DeklaracjeDDL wpływają na całą tabelę. | DML oddziałuje na jeden lub więcej wierszy. |
DeklaracjaSQL nie może być cofnięta | DeklaracjaSQL może być cofnięta |
DDL jest deklaratywny. | DML jest imperatywny. |
Polecenia dla DDL
Pięć typów poleceń DDL to:
CREATE
Komenda CREATE służy do definiowania schematu struktury bazy danych:
Syntaktyka:
CREATE TABLE TABLE_NAME (COLUMN_NAME DATATYPES);
Na przykład:
Create database university;Create table students;Create view for_students;
DROP
Komendy drop usuwają tabele i bazy danych z RDBMS.
Syntaktyka:
DROP TABLE ;
Na przykład:
Drop object_type object_name;Drop database university;Drop table student;
ALTER
Polecenie Alters umożliwia zmianę struktury bazy danych.
Syntaktyka:
Dodanie nowej kolumny w tabeli
ALTER TABLE table_name ADD column_name COLUMN-definition;
Modyfikacja istniejącej kolumny w tabeli:
ALTER TABLE MODIFY(COLUMN DEFINITION....);
Na przykład:
Alter table guru99 add subject varchar;
TRUNCATE:
To polecenie używane do usunięcia wszystkich wierszy z tabeli i zwolnienia miejsca zawierającego tabelę.
Syntaktyka:
TRUNCATE TABLE table_name;
Przykład:
TRUNCATE table students;
Polecenia dla DML
Tutaj znajduje się kilka ważnych poleceń DML:
- INSERT
- UPDATE
- DELETE
INSERT:
Jest to instrukcja będąca zapytaniem SQL. To polecenie jest używane do wstawiania danych do wiersza tabeli.
Syntaktyka:
INSERT INTO TABLE_NAME (col1, col2, col3,.... col N) VALUES (value1, value2, value3, .... valueN); Or INSERT INTO TABLE_NAME VALUES (value1, value2, value3, .... valueN);
Na przykład:
INSERT INTO students (RollNo, FIrstName, LastName) VALUES ('60', 'Tom', 'Erichsen');
UPDATE:
To polecenie jest używane do aktualizacji lub modyfikacji wartości kolumny w tabeli.
Syntaktyka:
UPDATE table_name SET
Na przykład:
UPDATE students SET FirstName = 'Jhon', LastName=' Wick' WHERE StudID = 3;
DELETE:
To polecenie jest używane do usuwania jednego lub więcej wierszy z tabeli.
Syntaktyka:
DELETE FROM table_name ;
Na przykład:
DELETE FROM students WHERE FirstName = 'Jhon';
Polecenie DDL Przykład
CREATE
Syntaktyka:
CREATE TABLE tableName( column_1 datatype , column_2 datatype , ...);
Tutaj
- Parametr tableName oznacza nazwę tabeli, którą zamierzasz utworzyć.
- Parametry column_1, column_2… oznaczają kolumny, które mają zostać dodane do tabeli.
- Kolumna powinna zostać określona jako NULL lub NOT NULL. Jeśli nie określisz, SQL Server przyjmie NULL jako wartość domyślną
Przykład:
CREATE TABLE Students(Student_ID Int,Student_Name Varchar(10))
ALTER
Syntaktyka:
Alter TABLE <Table name> ADD Column1 datatype, Column2 datatype;
Przykład:
ALTER TABLE University.Students_Name ADD Course_Duration VARCHAR(20);
DROP
Syntaktyka:
DROP TABLE <tableName>;
Parametr tableName jest nazwą tabeli, która ma zostać usunięta.
Przykład:
DROP TABLE COURSE_NAMES;
Przykład polecenia DML
INSERT
W języku PL/SQL możemy wstawiać dane do dowolnej tabeli za pomocą polecenia SQL INSERT INTO. Polecenie to pobiera nazwę tabeli, kolumnę tabeli oraz wartości kolumn jako dane wejściowe i wstawia wartość do tabeli bazowej.
Polecenie INSERT może również pobierać wartości bezpośrednio z innej tabeli za pomocą instrukcji 'SELECT’ zamiast podawania wartości dla każdej kolumny. Poprzez instrukcję 'SELECT’ możemy wstawić tyle wierszy, ile zawiera tabela bazowa.
Syntaktyka:
BEGIN INSERT INTO <table_name>(<column1 >,<column2>,...<column_n>) VALUES(<valuel><value2>,...:<value_n>);END;
Powyższa składnia przedstawia polecenie INSERT INTO. Nazwa tabeli i wartości są polami obowiązkowymi, natomiast nazwy kolumn nie są obowiązkowe, jeśli instrukcje wstawiania mają wartości dla wszystkich kolumn tabeli.
Słowo kluczowe „VALUES” jest obowiązkowe, jeśli wartości są podawane oddzielnie, jak pokazano powyżej.
Syntaktyka:
BEGIN INSERT INTO <table_name>(<columnl>,<column2>,...,<column_n>) SELECT <columnl>,<column2>,.. <column_n> FROM <table_name2>;END;
Powyższa składnia przedstawia polecenie INSERT INTO, które pobiera wartości bezpośrednio z <tablica_nazwa2> za pomocą polecenia SELECT.
Słowo kluczowe „VALUES” nie powinno być obecne w tym przypadku, ponieważ wartości nie są podawane oddzielnie.
DELETE
Poniżej przedstawiono składnię usuwania tabeli
Syntaktyka:
DROP TABLE <TableName>;
Parametr TableName jest nazwą tabeli, która ma zostać usunięta.
Przykład:
DROP TABLE COURSE_NAMES;
SELECT
Aby wyświetlić dane w SQL Server, używamy instrukcji SELECT.
Syntaktyka:
SELECT expressionFROM tableName;
Przykład:
SELECT * FROM Course;