Buenos días postgreros y postgreras. Bienvenidos a una nueva entrada en la que analizaremos los diferentes conjuntos de lenguaje SQL. Analizaremos las diferencias entre DDL, DML y DCL. Veremos qué son y para qué se utilizan. ¡Manos al teclado!
Hemos recibido decenas de peticiones solicitando contenido práctico sobre este tema, y aquí lo tenemos. ¡Empieza a formar parte de la comunidad de Postgreros hoy!
Como puedes observar, nuestras clases son cortas, directas y llenas de contenidos para que puedas convertirte en un gran profesional de PostgreSQL, el Sistema Gestor de Base de Datos libre más potente del mercado.
Lenguaje de Definición de Datos (DDL)
Es un lenguaje de programación para definir estructuras de datos, proporcionado por los sistemas gestores de bases de datos, en este caso PostgreSQL. En inglés, Data Definition Language, de ahí sus siglas DDL. Te recuerdo que si necesitas un amplio conocimiento en DDL deberías ver nuestro Curso de Sentencias DDL, DML, DCL y TCL. Si estás empezando y quieres conocer Postgre, quizás te interese nuestro Curso de introducción a PostgreSQL.
¿Quieres ser un profesional trabajando como Administrador de Bases PostgreSQL? ¿Ampliar tus conocimientos? Mira nuestro listado de Carreras para PostgreSQL.
Este lenguaje permite a los programadores de un sistema gestor de base de datos, como Postgres, definir las estructuras que almacenarán los datos así como los procedimientos o funciones que permitan consultarlos.
Para definir las estructura disponemos de tres sentencias:
- CREATE, se usa para crear una base de datos, tabla, vistas, etc.
- ALTER, se utiliza para modificar la estructura, por ejemplo añadir o borrar columnas de una tabla.
- DROP, con esta sentencia, podemos eliminar los objetos de la estructura, por ejemplo un índice o una secuencia.
Lenguaje de Manipulación de Datos (DML)
También es un lenguaje proporcionado por los sistemas gestores de bases de datos. En inglés, Data Manipulation Language (DML).
Utilizando instrucciones de SQL, permite a los usuarios introducir datos para posteriormente realizar tareas de consultas o modificación de los datos que contienen las Bases de Datos.
Los elementos que se utilizan para manipular los datos, son los siguientes:
- SELECT, esta sentencia se utiliza para realizar consultas sobre los datos.
- INSERT, con esta instrucción podemos insertar los valores en una base de datos.
- UPDATE, sirve para modificar los valores de uno o varios registros.
- DELETE, se utiliza para eliminar las filas de una tabla.
Todos estos lenguajes forman parte del lenguaje SQL en general. Es decir, no son aplicables únicamente a PostgreSQL sino a todos los gestores de bases de datos relacionales tales como Oracle SQL, MySQL o SQL Server. Si quieres aprender más sobre ello, empieza ya y apúntate a nuestra academia de PostgreSQL donde tienes todo el contenido en español.
Si quieres convertirte en DBA de PostgreSQL mira nuestros cursos de PostgreSQL: DBA & Developers
Lenguaje de Control de Datos (DCL)
Es un lenguaje que incluye una serie de comandos SQL. Como los anteriores, es proporcionado por los sistemas gestores de bases de datos. Sus siglas son DCL por su nombre en inglés, Data Control Language.
Estos comandos permiten al Administrador del sistema gestor de base de datos, controlar el acceso a los objetos, es decir, podemos otorgar o denegar permisos a uno o más roles para realizar determinadas tareas.
Los comandos para controlar los permisos son los siguientes:
- GRANT, permite otorgar permisos.
- REVOKE, elimina los permisos que previamente se han concedido.
En nuestro curso de SQL Developer te explicamos personalmente estos comandos, su uso y algunos trucos de cuando, cómo y por qué se deben de utilizar.
Sentencias prácticas
Cómo habéis visto en el video, las diferencias entre DDL, DML y DCL radican en los diferentes usos que hacemos de cada lenguaje. Si quieres ampliar la información sobre una de las sentencias más utilizadas en el mundo SQL, aquí tienes acceso a una entrada en la que vemos cómo podemos hacer uso de la instrucción INSERT.
¡Muchísimas gracias, y hasta la próxima!