Słyszałem terminy DDL i DML w odniesieniu do baz danych, ale nie rozumiem, czym one są.
Czym one są i jak odnoszą się do SQL?
Więcej informacji znajduje się tutaj: MySQL Co to jest DDL, DML i DCL? , oryginał jest następujący:
DDL
DDL to krótka nazwa języka definicji danych, który zajmuje się schematami i opisami baz danych, określającymi, w jaki sposób dane powinny znajdować się w bazie danych.
- UTWÓRZ - aby utworzyć bazę danych i jej obiekty takie jak (tabela, indeks, widoki, procedura przechowywania, funkcja i wyzwalacze)
- ALTER - zmienia strukturę istniejącej bazy danych
- DROP - usuń obiekty z bazy danych
- TRUNCATE - usuwa wszystkie rekordy z tabeli, w tym wszystkie miejsca przydzielone dla rekordów są usuwane
- KOMENTARZ - dodawanie komentarzy do słownika danych
- RENAME - zmień nazwę obiektu
DML
DML to krótka nazwa Data Manipulation Language, która zajmuje się manipulacją danymi i obejmuje większość popularnych instrukcji SQL, takich jak SELECT, INSERT, UPDATE, DELETE itp., I jest używana do przechowywania, modyfikowania, pobierania, usuwania i aktualizacji danych w bazie danych.
- WYBIERZ - pobiera dane z bazy danych
- WSTAW - wstaw dane do tabeli
- AKTUALIZACJA - aktualizuje istniejące dane w tabeli
- USUŃ - Usuń wszystkie rekordy z tabeli bazy danych
- MERGE - operacja UPSERT (wstaw lub aktualizuj)
- CALL - wywołaj podprogram PL / SQL lub Java
- PLAN WYJAŚNIENIA - interpretacja ścieżki dostępu do danych
- LOCK TABLE - Kontrola współbieżności
DCL
DCL to krótka nazwa języka kontroli danych, który obejmuje polecenia takie jak GRANT i dotyczy głównie praw, uprawnień i innych elementów sterujących systemu bazy danych.
- GRANT - zezwalaj użytkownikom na dostęp do bazy danych
- ODWOŁANIE - cofnięcie uprawnień dostępu użytkowników przyznanych za pomocą polecenia GRANT
TCL
TCL to krótka nazwa języka kontroli transakcji, który zajmuje się transakcjami w bazie danych.
- COMMIT - zatwierdza transakcję
- ROLLBACK - wycofanie transakcji w przypadku wystąpienia błędu
- SAVEPOINT - aby wycofać transakcję, tworząc punkty w grupach
- ZESTAW TRANSAKCJI - określ charakterystykę transakcji
DQL
Q z zapytania - ponieważ tak naprawdę nie manipulują niczym.DDL to język definicji danych : służy do definiowania struktur danych .
Na przykład, SQL, byłoby instrukcje takie jak
create table
,alter table
...DML to język manipulacji danymi : służy do manipulacji danymi .
Na przykład, SQL, byłoby instrukcje takie jak
insert
,update
,delete
, ...źródło
DESCRIBE
pasuje do żadnego z tych dwóch. Zwraca tylko własną reprezentację struktury tabeli / bazy danych. Możesz osiągnąć to samo, np.CREATE
Ale nie jako „czytelny dla człowieka”DDL to język definicji danych: Notacja specyfikacji do definiowania schematu bazy danych. Działa na poziomie schematu.
Polecenia DDL to:
create,drop,alter,rename
Na przykład:
DML to język przetwarzania danych. Służy do uzyskiwania dostępu do danych i manipulowania nimi.
Polecenia DML to:
Na przykład :
źródło
SELECT
nie modyfikuje danych. Alternatywnie,TRUNCATE
robi i dlatego jest instrukcją DML, a NIE instrukcją DDL.DDL, język definicji danych
na przykład:
CREATE
,ALTER
,DROP
,TRUNCATE
,COMMIT
, Itd.DML, język manipulacji danymi
Instrukcja DML ma wpływ na tabelę. To są podstawowe operacje, które wykonujemy w tabeli.
SELECT
,INSERT
,UPDATE
, itd.Poniższe polecenia są używane w DML:
INSERT
,UPDATE
,SELECT
,DELETE
, Itd.źródło
Mówiąc ogólnie, załóżmy, że chcesz zbudować dom, co robisz.
DDL
tzn. język definicji danychto jest
CREATE
ALTER
DROP & CREATE
DML
tj. język manipulacji danymiLudzie przychodzą / wchodzą do / z twojego domu
SELECT
DELETE
UPDATE
TRUNCATE
DCL
tj. język kontroli danychChcesz kontrolować ludzi, do której części domu mają dostęp i jaki rodzaj dostępu.
GRANT PERMISSION
źródło
Odwiedź tę stronę, aby uzyskać więcej informacji: http://blog.sqlauthority.com/2008/01/15/sql-server-what-is-dml-ddl-dcl-and-tcl-introduction-and-examples/
źródło
DDL to język definicji danych: pomyśl, że definiujesz DB. Używamy więc poleceń CREATE, ALTER TRUNCATE.
DML jest po zdefiniowaniu, że manipulujemy danymi. Dlatego używamy poleceń SELECT, INSERT, UPDATE, DELETE.
Pamiętaj, że polecenia DDL są automatycznie zatwierdzane. Nie musisz używać instrukcji COMMIT.
Polecenia DML (Data Manipulation Language) muszą zostać zatwierdzone / wycofane.
źródło
DDL = język definicji danych, wszelkie polecenia zapewniające strukturę i inne informacje o twoich danych
DML = Data Manipulation Language, jest tylko 3 z nich: INSERT, UPDATE, DELETE. 4, jeżeli będzie liczyć
SELECT * INTO x_tbl from tbl
z MSSQL (ANSI SQL:CREATE TABLE x_tbl AS SELECT * FROM tbl
)źródło
W prostych słowach.
DDL (język definicji danych): będzie działać na strukturze danych. zdefiniować struktury danych.
DML (język manipulacji danymi): działa na danych. manipuluje danymi
źródło
DD L: Zmień schemat
DML : zmień dane
Wydaje się, że jest specyficzny dla ograniczeń MySQL ( kod źródłowy szyn )
źródło
DDL
Twórz, zmieniaj, upuszczaj (bazy danych, tabele, klucze, indeks, widoki, funkcje, przechowywane procedury)
DML
Wstaw, usuń, aktualizuj, obcinaj (tabele)
źródło
DDL oznacza język definicji danych. DDL służy do definiowania struktury tabeli, takiej jak tworzenie tabeli lub dodawanie kolumny do tabeli, a nawet upuszczanie i obcinanie tabeli. DML oznacza Data Manipulation Language. Jak sama nazwa wskazuje, DML służy do manipulowania danymi tabeli. W DML jest kilka poleceń, takich jak wstawianie i usuwanie.
źródło