Diferença chave: DDL, que significa Data Definition Language, é usado principalmente para definir o esquema dentro de um banco de dados. Ele também define o relacionamento entre as entradas no banco de dados. DML, sigla para Data Manipulation Language, também é um idioma de banco de dados. No entanto, ao contrário do DDL, o DML pode ser utilizado para inserir, excluir, reviver e modificar os dados, em vez de apenas especificá-los.
DDL, que significa Data Definition Language, é usado principalmente para definir o esquema dentro de um banco de dados. Ele também define o relacionamento entre as entradas no banco de dados. DDL também pode ser usado para definir certas restrições de segurança. Como afirmado anteriormente, o DDL utiliza principalmente comandos SQL que são usados para criar, alterar e destruir objetos de banco de dados.
Uma vez executado, os comandos DDL resultam em novas tabelas que são armazenadas no "catálogo do sistema". Este catálogo também é chamado de dicionário de dados ou diretório de dados. No entanto, as alterações só podem definir os dados dentro do diretório e o relacionamento entre eles. Considerando que, DML pode ser usado para modificar os dados em si.
DML, sigla para Data Manipulation Language, também é um idioma de banco de dados. Como o DDL, seu papel principal é o gerenciamento de banco de dados. No entanto, ao contrário do DDL, o DML pode ser utilizado para inserir, excluir, reviver e modificar os dados, em vez de apenas especificá-los.
A DML também é usada frequentemente na recuperação de dados. Ele pode ser dividido em dois segmentos com base em suas construções de recuperação: DML procedural e DML não processual. A DML procedural especifica quais dados precisam ser recuperados e como os dados necessários devem ser recuperados. DML não processual especifica quais dados precisam ser recuperados, mas não como os dados necessários devem ser recuperados.
Comparação entre DDL e DML em Forma Tabular:
DDL | DML | |
Formulário completo | Linguagem de Definição de Dados | Linguagem de Manipulação de Dados |
Tipo de | Idioma do banco de dados | Idioma do banco de dados |
Subconjunto de | Linguagem de Consulta Estruturada (SQL) | Linguagem de Consulta Estruturada (SQL) |
Usos | Usado para definir as estruturas de dados, especialmente esquemas de banco de dados | Usado para manipulação de dados de estruturas de dados |
Tipos | ||
Relacionado a | Definindo dados | Inserindo, excluindo, revivendo e modificando dados |
Comandos | CREATE - para criar objetos no banco de dados ALTER - altera a estrutura do banco de dados DROP - exclui objetos do banco de dados TRUNCATE - remove todos os registros de uma tabela, incluindo todos os espaços alocados para os registros são removidos COMENTÁRIO - adicionar comentários ao dicionário de dados RENAME - renomear um objeto | SELECT - recupera dados do banco de dados INSERT - insere dados em uma tabela UPDATE - atualiza dados existentes em uma tabela DELETE - exclui todos os registros de uma tabela, o espaço para os registros permanece Operação MERGE - UPSERT (inserir ou atualizar) CALL - chama um subprograma PL / SQL ou Java EXPLAIN PLAN - explica o caminho de acesso aos dados LOCK TABLE - controle de simultaneidade |
Imagem Cortesia: sqa.org.uk, sqlinstructor.com