Conceptos Básicos
Definición
El lenguaje de consulta estructurado o SQL (por sus siglas en inglés Structured Query Language) es un lenguaje declarativo de acceso a bases de datos relacionales que permite especificar diversos tipos de operaciones en ellas.
1.1 Componentes del SQL
El lenguaje SQL está compuesto por comandos, cláusulas, operadores y funciones de agregado.
Estos elementos se combinan en las instrucciones para crear, actualizar y manipular las bases de datos.
1.2 Comandos SQL
Existen tres tipos de comandos SQL:
DDL (Data Definition Language) que permiten crear y definir nuevas bases de datos, campos, e índices.
DML (Data Manipulation Language) que permiten generar consultas para ordenar, filtrar y extraer datos de la base de datos.
DCL (Data Control Language) que se encargan de definir las permisos sobre los datos.
1.3 Lenguaje de definición de datos (DDL)
El lenguaje de definición de datos (en inglés Data Definition Language, o DDL), es el que se encarga de la modificación de la estructura de los objetos de la base de datos. Incluye órdenes para modificar, borrar o definir las tablas en las que se almacenan los datos de la base de datos. Existen cuatro operaciones básicas: CREATE, ALTER, DROP y TRUNCATE.
CREATE Utilizado para crear nuevas tablas, campos e índices.
ALTER Utilizado para modificar las tablas agregando campos o cambiando la definición de los campos.
DROP Empleado para eliminar tablas e índices.
TRUNCATE Este comando trunca todo el contenido de una tabla. La ventaja sobre el comando DROP, es que si se quiere borrar todo el contenido de la tabla, es mucho más rápido, especialmente si la tabla es muy grande.
1.3.1 CREATE
Este comando crea un objeto dentro del gestor de base de datos.
Puede ser una base de datos, tabla, índice, procedimiento almacenado o vista.
Ejemplo (crear una tabla):
CREATE TABLE persona
(
id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
nombre VARCHAR(50),
apellido1 VARCHAR(50),
apellido2 VARCHAR(255)
)
1.3.2 ALTER
Este comando permite modificar la estructura de un objeto.
Se pueden agregar/quitar campos a una tabla, modificar el tipo de un campo, agregar/quitar índices a una tabla, modificar un trigger, etc.
Sintaxis:
ALTER TABLE table_name ADD column_name column_definition;
Ejemplo: agregar la columna edad a la tabla persona:
ALTER TABLE persona ADD edad INT;
1.3.3 DROP
Este comando elimina un objeto de la base de datos.
Puede ser una tabla, vista, índice, trigger, función, procedimiento o cualquier otro objeto que el motor de la base de datos soporte.
Se puede combinar con la sentencia ALTER.
Ejemplo:
DROP TABLE 'NOMBRE_TABLA';
DROP SCHEMA 'ESQUEMA;'
DROP DATABASE 'BASEDATOS';
1.3.4 TRUNCATE
Este comando trunca todo el contenido de una tabla.
La ventaja sobre el comando DROP, es que si se quiere borrar todo el contenido de la tabla, es mucho más rápido, especialmente si la tabla es muy grande.
La desventaja es que TRUNCATE sólo sirve cuando se quiere eliminar absolutamente todos los registros, ya que no se permite la cláusula WHERE.
Ejemplo:
TRUNCATE TABLE 'NOMBRE_TABLA';
1.4 Lenguaje de manipulación de datos (DML)
Un lenguaje de manipulación de datos (Data Manipulation Language, o DML en inglés) es un lenguaje proporcionado por el sistema de gestión de base de datos que permite a los usuarios llevar a cabo las tareas de consulta o manipulación de los datos, organizados por el modelo de datos adecuado.
1.4.1 INSERT
Una sentencia INSERT de SQL agrega uno o más registros a una (y sólo una) tabla en una base de datos relacional.
Forma básica:
INSERT INTO ''tabla'' (''columna1'', [''columna2,... '']) VALUES (''valor1'', [''valor2,...''])
Ejemplo: INSERT INTO persona (nombre, apellido1, apellido2, edad) VALUES ('ANTONIO','PEREZ','GOMEZ',22),('ANTONIO','GARCIA','RODRIGEZ',30), ('PEDRO','RUIZ','GONZALEZ',26),(‘LUIS',‘FERNANDEZ','GONZALEZ',24);
Las cantidades de columnas y valores deben ser iguales. Si una columna no se especifica, le será asignado el valor por omisión. Los valores especificados (o implícitos) por la sentencia INSERT deberán satisfacer todas las restricciones aplicables. Si ocurre un error de sintaxis o si alguna de las restricciones es violada, no se agrega la fila y se devuelve un error.
1.4.2 SELECT
Una de las sentencias SQL más importantes es SELECT, ya que permite realizar consultas sobre los datos almacenados en la base de datos.
Forma básica:
SELECT * FROM nombretabla;
SELECT columna1, columna2 FROM nombretabla;
Por ejemplo, se tiene la siguiente sentencia, para una tabla personas con los campos nombre, apellido1 y apellido2:
SELECT * FROM `persona`
Si queremos consultar todos los nombres y primer apellido de todas las personas:
SELECT nombre, apellido1 FROM persona;
1.4.3 UPDATE
Una sentencia UPDATE de SQL es utilizada para modificar los valores de un conjunto de registros existentes en una tabla.
UPDATE es especialmente útil cuando se desea cambiar un gran número de registros 0 cuando estos se encuentran en múltiples tablas.
Forma básica:
UPDATE Tabla SET Campol=Valor!, Campo2=Valor2, ... CampoN=ValorN
Ejemplo:
UPDATE `persona` SET `edad`= 27 WHERE `id`= 3;
1.4.4 DELETE
Crea una consulta de eliminación que elimina los registros de una ó mas de las tablas listadas en la cláusula FROM que satisfagan la cláusula WHERE.
Esta consulta elimina los registros completos, no es posible eliminar el contenido de algún campo en concreto.
DELETE FROM 'tabla' WHERE 'columna1' = 'valor1'
Ejemplo:
DELETE FROM `persona` WHERE `id`= 4
1.5 CLÁUSULAS
Las cláusulas son condiciones de modificación utilizadas para definir los datos que desea seleccionar o manipular.
FROM Utilizada para especificar la tabla de la cual se van a seleccionar los registros
WHERE Utilizada para especificar las condiciones que deben reunir los registros que se van a seleccionar
GROUP BY Utilizada para separar los registros seleccionados en grupos específicos
HAVING Utilizada para expresar la condición que debe satisfacer cada grupo
ORDER BY Utilizada para ordenar los registros seleccionados de acuerdo con un orden especifico
1.6 Operadores de comparación
< Menor que
> Mayor que
<> Distinto de
<= Menor o igual que
>= Mayor o igual que
= Igual que
BETWEEN Utilizado para especificar un intervalo de valores
LIKE Utilizado en comparación de un modelo
In Utilizado para especificar registros de una base de datos
1.7 Operadores lógicos
AND Es el “y” lógico. Evalúa dos condiciones y devuelve un valor de verdad sólo si ambas son ciertas.
OR Es el “o” lógico. Evalúa dos condiciones y devuelve un valor de verdad si alguna de las dos es cierta.
NOT Negación lógica. Devuelve el valor contrario de la expresión.
1.8 Funciones de agregado
Las funciones de agregado se usan dentro de una cláusula SELECT en grupos de registros para devolver un único valor que se aplica a un grupo de registros.
AVG Utilizada para calcular el promedio de los valores de un campo determinado
COUNT Utilizada para devolver el número de registros de la selección
SUM Utilizada para devolver la suma de todos los valores de un campo determinado
MAX Utilizada para devolver el valor más alto de un campo especificado
MIN Utilizada para devolver el valor más bajo de un campo especificado
Comentarios
Publicar un comentario