Structured Query Language

El lenguaje SQL (Structured Query language, en español Lenguaje de Consulta Estructurado) es un lenguaje para el acceso a bases de datos relacionales. SQL se ha convertido en la actualidad en el lenguaje estándar de bases de datos, soportándolo la mayoría de los sistemas de bases de datos.

Este lenguaje va a permitir consultar, actualizar, insertar y borrar filas de una tabla (tuplas), crear modificar y borrar objetos, también nos va a permitir controlar accesos a las bases de datos y a sus objetos, además de garantizar la integridad de los datos.

Nació en los laboratorios de investigación de IBM, que lo adoptó y lo popularizó internacionalmente. Gracias al éxito, numerosas compañías empezaron a comercializar productos basados en SQL, convirtiéndose en el estándar de facto, aunque a partir del 86 se hizo de iure. Desafortunadamente, cada compañía ha desarrollado su propio "dialecto" SQL, por lo que SQL puede variar de un sistema a otro. Dichos cambios son menores para el programador, pero aún así suelen requerir la reescritura de muchas sentencias SQL si deseamos trasladar nuestra base de datos entre sistemas.

Actualmente, el último estándar aprobado por los comités ANSI e ISO es SQL3 o SQL-99, que incorpora nuevos tipos de datos, soporte de expresiones regulares y disparadores (triggers).

Las sentencias SQL se clasifican por su finalidad dando origen a los siguientes sublenguajes:

  • LMD (Lenguaje de Manipulación de Datos)
  • LDD (Lenguaje de Definición de Datos)
  • LCD (Lenguaje de Control de Datos)

Empezaremos por las sentencias LDD y LMD. Los comandos LCD son más propios de los capítulos de administración de MySQL.

Data Description Language, en español: Lenguaje de Definición de Datos.

Este tipo de comandos definen, modifican o borran las tablas en las que se almacenan los datos y las relaciones entre éstas.

Comando Descripción
CREATE Utilizado para crear nuevas tablas, campos e índices.
DROP Empleado para eliminar tablas e índices.
ALTER Utilizado para modificar las tablas agregando campos o cambiando la definición de los campos.

Data Manipulation Language, en español: Lenguaje de Manipulación de Datos. Estas se conocen como consultas.

Existen tres tipos: consultas de selección, consultas de acción y consultas de control de concurrencia.

Las consultas de selección devuelven información de la base de datos sin realizar modificaciones en la misma.

Comando Descripción
SELECT Utilizado para consultar registros de la base de datos que satisfagan un criterio determinado.

Las consultas de acción modifican los datos de las tablas de la base de datos.

Comando Descripción
INSERT Utilizado para cargar lotes de datos en la base de datos en una única operación.
UPDATE Utilizado para modificar los valores de los campos y registros especificados.
SELECT Utilizado para eliminar registros de una tabla de una base de datos.

Las consultas de control de concurrencia permiten mantener la integridad de los datos obligando a la ejecución de varias consultas de forma íntegra e inseparable.

Comando Descripción
COMMIT Graba permanentemente en la base de datos las últimas modificaciones.
ROLLBACK Permite volver al estado en el que estaba la base de datos tras el último COMMIT.

Data Control Language, en español: Lenguaje de Control de Datos.

Este tipo de comandos se encargan de la seguridad de nuestros datos y el control de usuarios.

Comando Descripción
GRANT Se emplea para dar permisos a los usuarios.
REVOKE Con él podemos eliminar permisos a los usuarios.

« MySQL 4 | Creación de bases de datos

Si no se indica lo contrario, el contenido de esta página se ofrece bajo Creative Commons Attribution-ShareAlike 3.0 License