He escuchado los términos DDL y DML en referencia a las bases de datos, pero no entiendo cuáles son.
¿Qué son y cómo se relacionan con SQL?
Más información ver aquí: MySQL ¿Qué es DDL, DML y DCL? , el original es el siguiente:
DDL
DDL es el nombre corto del lenguaje de definición de datos, que se ocupa de los esquemas y descripciones de la base de datos, de cómo deben residir los datos en la base de datos.
- CREAR: para crear una base de datos y sus objetos como (tabla, índice, vistas, procedimiento de almacenamiento, función y desencadenantes)
- ALTER - altera la estructura de la base de datos existente
- DROP: elimina objetos de la base de datos
- TRUNCATE: elimina todos los registros de una tabla, incluidos todos los espacios asignados para los registros.
- COMENTARIO: agregue comentarios al diccionario de datos
- RENAME - renombrar un objeto
DML
DML es el nombre corto del lenguaje de manipulación de datos que se ocupa de la manipulación de datos e incluye las instrucciones SQL más comunes como SELECCIONAR, INSERTAR, ACTUALIZAR, ELIMINAR, etc., y se utiliza para almacenar, modificar, recuperar, eliminar y actualizar datos en la base de datos.
- SELECCIONAR - recuperar datos de una base de datos
- INSERT - inserta datos en una tabla
- ACTUALIZACIÓN: actualiza los datos existentes dentro de una tabla
- BORRAR - Eliminar todos los registros de una tabla de base de datos
- MERGE - Operación UPSERT (insertar o actualizar)
- LLAMADA - llame a un subprograma PL / SQL o Java
- EXPLICAR PLAN - interpretación de la ruta de acceso a datos
- TABLA DE BLOQUEO - Control de concurrencia
DCL
DCL es el nombre corto del lenguaje de control de datos que incluye comandos como GRANT, y se ocupa principalmente de los derechos, permisos y otros controles del sistema de base de datos.
- CONCESIÓN: permite a los usuarios acceder a privilegios a la base de datos
- REVOKE: retira los privilegios de acceso de los usuarios otorgados mediante el comando GRANT
TCL
TCL es el nombre corto del lenguaje de control de transacciones que se ocupa de las transacciones dentro de una base de datos.
- COMPROMISO - confirma una transacción
- ROLLBACK - revierte una transacción en caso de que ocurra algún error
- SAVEPOINT - para deshacer la transacción haciendo puntos dentro de grupos
- SET TRANSACTION - especifica características para la transacción
DQL
, con la Q de Consulta, porque en realidad no manipulan nada.DDL es lenguaje de definición de datos : se utiliza para definir estructuras de datos .
Por ejemplo, con SQL, sería instrucciones tales como
create table
,alter table
...DML es lenguaje de manipulación de datos : se utiliza para manipular datos en sí .
Por ejemplo, con SQL, sería instrucciones tales como
insert
,update
,delete
, ...fuente
DESCRIBE
encaje en ninguno de los dos. Simplemente devuelve su propia representación de cómo se estructura una Tabla / DB. Puede lograr lo mismo con, por ejemplo,CREATE
pero no como "legible para humanos"DDL es lenguaje de definición de datos: notación de especificación para definir el esquema de la base de datos. Funciona a nivel de esquema.
Los comandos DDL son:
create,drop,alter,rename
Por ejemplo:
DML es lenguaje de manipulación de datos . Se utiliza para acceder y manipular los datos.
Los comandos DML son:
Por ejemplo :
fuente
SELECT
No modifica los datos. Alternativamente, loTRUNCATE
hace, y por lo tanto es una instrucción DML y NO una DDL.DDL, lenguaje de definición de datos
p.ej:
CREATE
,ALTER
,DROP
,TRUNCATE
,COMMIT
, Etc.DML, lenguaje de manipulación de datos
La declaración DML se ve afectada en la tabla. Estas son las operaciones básicas que realizamos en una tabla.
SELECT
,INSERT
,UPDATE
, etc.Los siguientes comandos se utilizan en DML:
INSERT
,UPDATE
,SELECT
,DELETE
, Etc.fuente
En términos simples, supongamos que desea construir una casa, ¿qué hace?
DDL
es decir, lenguaje de definición de datoses decir
CREATE
ALTER
DROP & CREATE
DML
es decir, lenguaje de manipulación de datosLa gente entra / sale de tu casa
SELECT
DELETE
UPDATE
TRUNCATE
DCL
es decir, lenguaje de control de datosDesea controlar a las personas a qué parte de la casa se les permite acceder y el tipo de acceso.
GRANT PERMISSION
fuente
Visite este sitio para obtener más información: http://blog.sqlauthority.com/2008/01/15/sql-server-what-is-dml-ddl-dcl-and-tcl-introduction-and-examples/
fuente
DDL es lenguaje de definición de datos: solo piense que está definiendo la base de datos. Entonces usamos los comandos CREATE, ALTER TRUNCATE.
DML es después de definir que estamos manipulando los datos. Entonces usamos el comando SELECT, INSERT, UPDATE, DELETE.
Recuerde que los comandos DDL se confirman automáticamente. No necesita usar declaraciones COMMIT.
Los comandos DML (lenguaje de manipulación de datos) deben confirmarse / revertirse.
fuente
DDL = Lenguaje de definición de datos, cualquier comando que proporcione estructura y otra información sobre sus datos
DML = Lenguaje de manipulación de datos, solo hay 3 de ellos, INSERT, UPDATE, DELETE. 4, si va a contar
SELECT * INTO x_tbl from tbl
de MSSQL (ANSI SQL:CREATE TABLE x_tbl AS SELECT * FROM tbl
)fuente
En palabras simples
DDL (lenguaje de definición de datos): funcionará en la estructura de datos. Definir las estructuras de datos.
DML (lenguaje de manipulación de datos): funcionará en datos. manipula los datos en sí
fuente
DD L: cambiar el esquema
DML : cambiar los datos
Parece específico a las limitaciones de MySQL ( código fuente de rails )
fuente
DDL
Crear, modificar, descartar (bases de datos, tablas, claves, índice, vistas, funciones, procedimientos almacenados)
DML
Insertar, eliminar, actualizar, truncar (tablas)
fuente
DDL significa lenguaje de definición de datos. DDL se utiliza para definir la estructura de la tabla, como crear una tabla o agregar una columna a la tabla e incluso soltar y truncar la tabla. DML significa lenguaje de manipulación de datos. Como su nombre indica, DML se utiliza para manipular los datos de la tabla. Hay algunos comandos en DML, como insertar y eliminar.
fuente