Un lenguaje de manipulación de datos ( DML ) es un lenguaje de programación de computadora que se usa para agregar (insertar), eliminar y modificar (actualizar) datos en una base de datos . Un DML es a menudo un sublenguaje de un lenguaje de base de datos más amplio como SQL , y el DML comprende algunos de los operadores del lenguaje. [1] La selección de datos de solo lectura a veces se distingue como parte de un lenguaje de consulta de datos separado (DQL), pero está estrechamente relacionada y, a veces, también se considera un componente de un DML; algunos operadores pueden realizar tanto la selección (lectura) como la escritura.
Un lenguaje de manipulación de datos popular es el de Structured Query Language (SQL), que se utiliza para recuperar y manipular datos en una base de datos relacional . [2] Otras formas de DML son las que utilizan las bases de datos IMS / DLI, CODASYL , como IDMS y otras.
SQL
En SQL, el lenguaje de manipulación de datos comprende las declaraciones de cambio de datos SQL , [3] que modifican los datos almacenados pero no el esquema o los objetos de la base de datos. La manipulación de objetos de bases de datos persistentes, por ejemplo, tablas o procedimientos almacenados , a través de declaraciones de esquema SQL, [3] en lugar de los datos almacenados en ellos, se considera parte de un lenguaje de definición de datos (DDL) separado . En SQL, estas dos categorías son similares en su sintaxis detallada, tipos de datos, expresiones, etc., pero distintas en su función general. [3]
Las sentencias de cambio de datos SQL son un subconjunto de las sentencias de datos SQL ; esto también contiene la instrucción de consulta SELECT , [3] que estrictamente hablando es parte del DQL, no del DML. Sin embargo, en la práctica común, esta distinción no se hace y SELECT se considera ampliamente como parte de DML, [4] por lo que el DML consiste en todas las declaraciones de datos SQL , no solo las declaraciones de cambio de datos SQL . El SELECT ... INTO ...
formulario combina selección y manipulación y, por lo tanto, se considera estrictamente DML porque manipula (es decir, modifica) datos.
Los lenguajes de manipulación de datos tienen su capacidad funcional organizada por la palabra inicial en una declaración, que casi siempre es un verbo . En el caso de SQL, estos verbos son:
SELECT ... FROM ... WHERE ...
(estrictamente hablando DQL)INSERT INTO ... VALUES ...
UPDATE ... SET ... WHERE ...
DELETE FROM ... WHERE ...
Por ejemplo, el comando para insertar una fila en la tabla de empleados :
INSERT INTO empleados ( first_name , last_name , fname ) VALUES ( 'John' , 'Capita' , 'xcapit00' );
Variantes
La mayoría de las implementaciones de bases de datos SQL amplían sus capacidades SQL proporcionando lenguajes imperativos , es decir, de procedimiento. Ejemplos de estos son Oracle 's PL / SQL y DB2 ' s SQL_PL .
Los lenguajes de manipulación de datos tienden a tener muchos sabores y capacidades diferentes entre los proveedores de bases de datos. Ha habido una serie de estándares establecidos para SQL por ANSI , [2] pero los proveedores aún proporcionan sus propias extensiones al estándar sin implementar el estándar completo.
Los lenguajes de manipulación de datos se dividen en dos tipos, programación procedimental y programación declarativa .
Inicialmente, los lenguajes de manipulación de datos solo se usaban dentro de los programas de computadora , pero con la llegada de SQL, los administradores de bases de datos los utilizan de manera interactiva.
Ver también
Declaraciones
Idiomas relacionados
Referencias
- ^ Chatham, Mark (2012). Lenguaje de consulta estructurado por ejemplo - Volumen I: Lenguaje de consulta de datos . pag. 8 . ISBN 978-1-29119951-2.
- ^ a b SQL92
- ^ a b c d SQL92 4.22.2, sentencias SQL clasificadas por función
- ^ "Declaraciones de lenguaje de manipulación de datos" . Oracle .
Las declaraciones del lenguaje de manipulación de datos (DML) consultan o manipulan datos en objetos de esquema existentes.
- "El estándar SQL92" .
enlaces externos
- Comandos DML en Oracle