Que Es SQL:: Analizador
Que Es SQL:: Analizador
El lenguaje de consulta estructurada (SQL) utilizado para almacenar y procesar información en una
base de datos relacional. Una base de datos relacional almacena información en forma de tabla,
con filas y columnas que representan diferentes atributos de datos y las diversas relaciones entre
los valores de datos. Puede usar las instrucciones SQL para almacenar, actualizar, eliminar, buscar
y recuperar información de la base de datos. También puede usar SQL para mantener y optimizar
el rendimiento de la base de datos.
Historia de SQL
SQL se inventó en la década de 1970 con base en el modelo de datos relacional. AL inicio se
conocía como el lenguaje de consultas estructuradas en inglés (SEQUEL). Mas tarde, el término se
abrevió a SQL. Oracle, antes conocido como Relational Software, se convirtió en el primer
proveedor en ofrecer un sistema comercial de administración de bases de datos relacionales SQL.
Analizador
El analizador comienza por tokenizar o reemplazar algunas de las palabras de la instrucción SQL
con símbolos especiales. A continuación, comprueba si la instrucción tiene lo siguiente:
Corrección
El analizador verifica que la instrucción SQL se ajuste a la semántica o reglas de SQL que garantizan
la corrección de la instrucción de la consulta. Por ejemplo, el analizador comprueba si el comando
SQL termina con punto y coma. Si falta el punto y coma, el analizador devuelve un error.
Autorización
El analizador también valida que el usuario que ejecuta la consulta tenga la autorización necesaria
para manipular los datos correspondientes. Por ejemplo, solo los usuarios administradores
podrían tener derecho a eliminar datos.
Motor relacional
El motor relacional, o procesador de consultas, crea un plan para recuperar, escribir o actualizar
los datos correspondientes de la manera más eficaz. Por ejemplo, busca consultas similares,
vuelve a utilizar métodos de manipulación de datos anteriores o crea uno nuevo. Escribe el plan en
una representación de nivel intermedio de la instrucción SQL llamada código de bytes. Las bases
de datos relacionales utilizan el código de bytes para hacer búsquedas y modificaciones en ellas.
Motor de almacenamiento
El lenguaje de definición de datos (DDL) se refiere a comandos SQL que diseñan la estructura de la
base de datos. Los ingenieros de bases de datos utilizan DDL para crear y modificar objetos de
bases de datos en función de las necesidades empresariales. Por ejemplo, el ingeniero de bases de
datos utiliza el comando CREATE para crear objetos de base de datos, como tablas, vistas e
índices.
Las instrucciones del lenguaje de manipulación de datos (DML) escriben información nueva o
modifican los registros existentes en una base de datos relacional. Por ejemplo, una aplicación usa
el comando INSERT para almacenar un nuevo registro en la base de datos.
Los administradores de bases de datos usan el lenguaje de control de datos (DCL) para administrar
o autorizar el acceso a la base de datos. Por ejemplo, pueden usar el comando GRANT para
permitir que ciertas aplicaciones manipulen una o más tablas.
El motor relacional utiliza el lenguaje de control de transacciones (TCL) para hacer cambios en la
base de datos de manera automática. Por ejemplo, la base de datos usa el comando ROLLBACK
para deshacer una transacción errónea.
¿Qué es MySQL?
MySQL es un sistema de administración de bases de datos relacionales de código abierto ofrecido
por Oracle. Los desarrolladores pueden descargar y usar MySQL sin pagar tarifas de licencia.
Pueden instalar MySQL en diferentes sistemas operativos o servidores en la nube. MySQL es un
sistema de base de datos popular para aplicaciones web.
¿Qué es NoSQL?
NoSQL se refiere a bases de datos no relacionales que no usan tablas para almacenar datos. Los
desarrolladores almacenan información en diferentes tipos de bases de datos NoSQL, incluidos
gráficos, documentos y valores clave. Las bases de datos NoSQL son populares para las
aplicaciones modernas porque son escalables horizontalmente. El escalado horizontal consiste en
aumentar la potencia de procesamiento al agregar más computadoras que ejecuten el software
NoSQL.
Instrucciones SELECT
Para describir un conjunto de datos con SQL, se escribe una instrucción SELECT. Una instrucción
SELECT contiene una descripción completa de un conjunto de datos que quiere obtener de una
base de datos. Se incluye lo siguiente:
Si se deben ordenar los datos y, en caso de ser así, cómo deben ordenarse.
Cláusulas SQL
Como una frase, una instrucción SQL tiene cláusulas. Cada cláusula realiza una función de la
instrucción SQL. Algunas cláusulas son necesarias en una instrucción SELECT. En la siguiente tabla,
se enumeran las cláusulas SQL más comunes.
SELECT Muestra una lista de los campos que contienen datos de interés. Sí
FROM Muestra las tablas que contienen los campos de la cláusula SELECT. Sí
WHERE Especifica los criterios de campo que cada registro debe cumplir para poder ser incluido No
en los resultados.
GROUP BY En una instrucción SQL que contiene funciones de agregado, muestra los campos que Solo si están estos
no se resumen en la cláusula SELECT. campos
HAVING En una instrucción SQL que contiene funciones de agregado, especifica las condiciones No
que se aplican a los campos que se resumen en la instrucción SELECT.
Términos de SQL
operador verbo o adverbio Palabra clave que representa o modifica una acción. AS
Las bases del lenguaje SQL trabajan con comandos categorizados en los siguientes
subconjuntos:
DDL, lenguaje de definición de datos, está compuesto por los comandos que definen el esquema
de la base de datos, creando, modificando y borrando la estructura de sus objetos, sin tocar la
información contenida en ellos.
Los ejemplos de comandos DDL son: CREATE (CREAR), DROP (SOLTAR), ALTER (ALTERAR),
TRUNCATE (TRUNCAR), COMMENT (COMENTAR), RENAME (RENOMBRAR).
DML, lenguaje de manipulación de datos, sirve para controlar el acceso de información a los
componentes de la base de datos, mediante la inserción, la actualización, el bloqueo y el borrado.
Los principales comandos DML son: INSERT (INSERTAR), UPDATE (ACTUALIZAR), DELETE
(BORRAR), LOCK (CERRAR), CALL (LLAMAR), EXPLAIN PLAN (EXPLICAR EL PLAN).
DCL, lenguaje de control de datos, se emplea para administrar derechos y permisos para controlar
el sistema de la base de datos.
Tipos de SGBD
Los SGBD son sistemas gestores de bases de datos sobre los cuales se usa SQL como lenguaje de
programación principal para el manejo de la información. Los más conocidos son:
MySQL se considera como la base de datos de código abierto más popular del mundo.
Puede ser instalada y modificada al gusto, es simple de usar y ofrece soluciones rápidas y
confiables. La disponibilidad de backups en caso de corrupción, hace que sea una opción
segura para todo tipo de transacciones.
SQLite se diferencia de los otros SGBD por no usar el sistema cliente-servidor, sino su
propio programa por el cual se comunica. Esto hace que el acceso y la comunicación entre
procesos sean más rápidos, ya que la información se encuentra guardada en ficheros
dentro de una máquina huésped.