En este artículo, discutiremos el lenguaje de definición de datos, el lenguaje de manipulación de datos, el lenguaje de control de transacciones y el lenguaje de control de datos.

Comandos SQL
DDLDMLDCLTCL
CREATESELECTGRANTCOMMIT
ALTERINSERTREVOKEROLLBACK
DROPUPDATESAVEPOINT
RENAMEDELETESET TRANSACTION
TRUNCATEMERGE
COMMENTCALL
EXPLAIN PLAN
LOCK TABLE

1. DDL (lenguaje de definición de datos)

El lenguaje de definición de datos se utiliza para definir la estructura de la base de datos o el esquema. DDL también se utiliza para especificar propiedades adicionales de los datos. La estructura de almacenamiento y los métodos de acceso utilizados por el sistema de base de datos por un conjunto de declaraciones en un tipo especial de DDL llamado almacenamiento de datos y lenguaje de definición.

Estas declaraciones definen los detalles de implementación del esquema de base de datos, que generalmente están ocultos a los usuarios. Los valores de datos almacenados en la base de datos deben satisfacer ciertas restricciones de consistencia.

Por ejemplo, supongamos que la universidad requiere que el saldo de la cuenta de un departamento nunca debe ser negativo. El DDL proporciona facilidades para especificar tales restricciones. El sistema de base de datos comprueba estas restricciones cada vez que se actualiza la base de datos. En general, una restricción puede ser un predicado arbitrario perteneciente a la base de datos. Sin embargo, los predicados arbitrarios pueden ser costosos para la prueba. Por lo tanto, el sistema de base de datos implementa restricciones de integridad que se pueden probar con una sobrecarga mínima.

  1. Restricciones de dominio: Un dominio de valores posibles debe asociarse con cada atributo (por ejemplo, tipos de enteros, tipos de caracteres, tipos de fecha/hora). Declarar que un atributo es de un dominio particular actúa como una restricción en los valores que puede tomar.
  2. Integridad referencial:  Hay casos en los que queremos asegurarnos de que un valor que aparece en una relación para un conjunto dado de atributos, también aparezca en un conjunto determinado de atributos en otra relación, es decir, integridad referencial. Por ejemplo, el departamento listado para cada curso debe ser uno que realmente exista.
  3. Afirmaciones: Una afirmación es cualquier condición que la base de datos debe satisfacer siempre. Las restricciones de dominio y las restricciones de integridad son una forma especial de aserciones/afirmaciones.
  4. Autorización: Podemos querer diferenciar entre los usuarios en cuanto al tipo de acceso que están permitidos en varios valores de datos en la base de datos. Estas diferenciaciones se expresan en términos de Autorización. Entre los más comunes tenemos:
  • Autorización de lectura: Que permite leer, pero no modificar datos.
  • Autorización de inserción: Que permite la inserción de nuevos datos, pero no la modificación de los datos existentes.
  • Autorización de actualización: Que permite la modificación, pero no la eliminación.

Algunos comandos:

  • CREATE : Para crear objetos en la base de datos.
  • ALTER : Altera la estructura de la base de datos.
  • DROP : Eliminar objetos de la base de datos.
  • RENAME : Renombrar un objeto.

La siguiente declaración DDL de SQL define la tabla Departamento:

create table Departamento
(nombre_dept    char(20),
 edificio       char(15),
 presupuesto    numeric(12,2));

La ejecución de la declaración DDL anterior crea la tabla de nombre Departamento con tres columnas: nombre_dept, edificio y presupuesto; cada uno de los cuales tiene un tipo de datos específico asociado.

2. DML (lenguaje de manipulación de datos)

Las declaraciones DML se utilizan para administrar datos con objetos de esquema. Los DML son de dos tipos:

  1. DML de procedimiento: requieren que un usuario especifique qué datos se necesitan y cómo obtenerlos.
  2. DML declarativos (también conocidos como DML sin procedimiento): requieren que un usuario especifique qué datos se necesitan sin especificar cómo obtener esos datos. Los DML declarativos suelen ser más fáciles de aprender y usar que los DML de procedimientos. Sin embargo, dado que un usuario no tiene que especificar cómo obtener los datos, el sistema de base de datos tiene que encontrar un medio eficiente para acceder a los datos.

Algunos comandos:

  • SELECT : Recuperar datos de la base de datos.
  • INSERT : Insertar datos en una tabla.
  • UPDATE : Actualizar los datos existentes dentro de una tabla
  • DELETE : Elimina todos los registros de una tabla.

Ejemplo de consulta SQL que encuentra los nombres de todos los instructores en el departamento de Historia:

select instructor.nombre
from   instructor
where  instructor.nombre_dept = 'Historia';

La consulta especifica que esas filas de la tabla instructor, donde el nombre dept_name es Historia deben recuperarse y los atributos nombre de estas filas deben mostrarse.

3. TCL (Lenguaje de Control de Transacciones)

Los comandos o sentencias de Lenguaje de Control de Transacciones se utilizan para administrar transacciones en la base de datos. Estos se utilizan para gestionar los cambios realizados por las declaraciones DML. También permite agrupar las declaraciones en transacciones lógicas.

Algunos comandos:

  • COMMIT : El comando Commit se usa para guardar permanentemente cualquier transacción en la base de datos.
  • ROLLBACK : Este comando restaura la base de datos al último estado confirmado.También se usa con el comando savepoint para saltar a un savepoint en una transacción.
  • SAVEPOINT : El comando Savepoint se usa para guardar temporalmente una transacción, por lo que puede retroceder a ese punto siempre que sea necesario.

4. DCL (lenguaje de control de datos)

Un lenguaje de control de datos es una sintaxis similar a un lenguaje de programación de computadora utilizado para controlar el acceso a los datos almacenados en una base de datos (Autorización). En particular, es un componente del lenguaje de consulta estructurado (SQL).

Algunos comandos:

  • GRANT : permite que usuarios específicos realicen tareas específicas.
  • REVOKE : cancelar los permisos previamente concedidos o denegados.

Las operaciones para las cuales se pueden otorgar o revocar privilegios de un usuario o rol se aplican tanto al lenguaje de definición de datos (DDL) como al lenguaje de manipulación de datos (DML), y pueden incluir CONNECT (CONECTAR), SELECT (SELECCIONAR), INSERT (INSERTAR), UPDATE (ACTUALIZAR), DELETE (BORRAR), EXECUTE  (EJECUTAR)  y USAGE (EJECUTAR USO).

En la base de datos Oracle, la ejecución de un comando DCL emite un compromiso implícito. Por lo tanto, no se puede revertir el comando.

DDL, DML, TCL y DCL en SQL
5 (100%) 9 votos




Alex Walton

Alex Walton

Aprender desde Cero es tu web para conocer todo sobre informática. Mi nombre es Alex y me gustaría que dejes tu comentario ante cualquier duda o aporte.
"Si no lo consigues a la primera, llámalo versión 1.0"

Comparte este artículo:

Facebook
Google+
Twitter
LinkedIn
WhatsApp
Email
Deja tu comentario
Contenido Relacionado
Comentarios en SQL con ejemplos

Comentarios en SQL

Como cualquier lenguaje de programación, los comentarios también importan mucho en SQL. En este conjunto aprenderemos sobre cómo escribir comentarios ...
Leer Más
Vistas en SQL

Vistas en SQL

Las vistas en SQL son una especie de tablas virtuales. Una vista también tiene filas y columnas, ya que están ...
Leer Más
Transacciones SQL con ejemplos

Transacciones SQL

Conoce qué son, para qué sirven, y cómo implementar transacciones en SQL, con muchos ejemplos. 1. ¿Qué son las transacciones? ...
Leer Más
SOBRE NOSOTROS

Somos una web que busca el libre conocimiento en temas relacionados a la informática.

Todos los cursos son gratis. La publicidad nos mantiene activos así que por favor visita a nuestros anunciantes.

RECIBE MUCHOS REGALOS