Introducción al lenguaje SQL.
agosto 19, 20206.1 Características.
Cuando se quiere hacer uso de un lenguaje de programación se requiere de una sintaxis como lo es SQL, siglas formadas por las iniciales de Structured Query Language (que en español es: Lenguaje de Consulta Estructurado) que usa una combinación de álgebra relacional y construcciones del cálculo relacional para escribir de forma correcta y adecuada la notación de una consulta.
6.1.1 Propiedades
- Lo utilizan todos los usuarios (administradores y usuarios finales).
- El usuario indica que quiere hacer, no donde ni como hacerlo.
- Permite realizar cualquier consulta o actualización de datos.
- Se pueden manejar conjuntos de filas.
6.1.2 Sentencias SQL
Una sentencia SQL es una cadena de caracteres que se envía al SGBD para su ejecución. Contiene palabras del lenguaje, nombres de tablas y columnas, constantes y signos delimitadores.
Esta cadena de caracteres se compila automáticamente, generándose un procedimiento de ejecución que realiza la operación deseada. Si la sentencia es errónea o incompleta el SGBD genera un mensaje de error.
6.1.3 Tablas
Todos los datos almacenados en las Bases de Datos relacionales están dispuestos en estructuras llamadas tablas. Cada tabla se identifica con un nombre y está compuesta por un conjunto de columnas y a su vez cada columna se define con un nombre, un tipo de dato (alfanumérico, numérico, fecha, etc.) y una longitud.
Las columnas se identifican por su nombre, no por su posición dentro de la tabla, mientras que a la información dentro de la tabla se guarda en filas, conteniendo datos de las columnas de la tabla. No es significativo el orden en el que se almacenan las filas. En cada intersección de una fila y una columna se almacena un solo valor. Aceptándose el valor NULL (ausencia de valor) que no ocupa espacio en la base de datos.
Los usuarios que crean las tablas son los únicos que pueden trabajar inicialmente con los datos almacenadas en ellas.
6.1.4 Tipos de datos
Por la norma ANSI se definen de la siguiente manera:
Numéricas: Contienen números enteros, decimales y en coma flotante.
SMALLINT para enteros pequeños, INTEGER para enteros grandes, NUMERIC y DECIMAL para números con parte entera y parte fraccionaria y FLOAT, DOUBLE PRECISION Y REAL para números en formato en coma flotante.
Alfanuméricas: Contienen cadenas de caracteres de longitud fija y de longitud variable.
La norma ANSI define tipos de datos de longitud fija con CHARACTER, CHAR, NATIONAL CHARACTER, NCHAR, etc. y tipos de longitud variable con CHARACTER VARYING, CHAR VARYING, NATIONAL CHARACTER VARYING, NCHAR VARYING, etc. y VARCHAR, que permite cadenas de caracteres de longitud variable con valor máximo igual al entero ‘n’.
Las columnas alfanuméricas de longitud variable se caracterizan principalmente porque el SGBD requiere un espacio de almacenamiento igual a la longitud real del dato no a la longitud máxima de definición de la columna.
Este lenguaje de consulta estructurado (Structured Query Language), se subdivide en otros lenguajes como:
- DDL: Lenguaje de definición de datos.
- DML: Lenguaje de manipulación de datos.
Para poder utilizar el sistema MySQL, se debe instalar en tu computadora para que puedas interactuar con las bases de datos, para ello te dejamos los links aquí abajo para que vayas y lo descargues:
- Sistema Operativo de 32 bits: MySQL Workbench: https://bit.ly/33lCfdp
- Complementario: https://bit.ly/3fGAY5k
- Sistema Operativo de 64 bits: MySQL Workbench: https://bit.ly/36aEi5C
6.2 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 instrucciones básicas:
- CREATE (crear): Este comando permite crear objetos de datos, como nuevas bases de datos, tablas, vistas y procedimientos almacenados.
tipo_objeto Nombre Definición (CREATE TABLE Automoviles)
- ALTER (modificar): Este comando permite modificar la estructura de una tabla u 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.
tipo_objeto Nombre Modificación (ALTER TABLE Automoviles DROP COLUMN Modelo)
- DROP (eliminar): Este comando elimina un objeto de la base de datos. Puede ser una tabla, vista, índice, trigger, función, procedimiento o cualquier objeto que el motor de la base de datos soporte. Se puede combinar con la sentencia ALTER.
tipo_objeto Nombre (DROP TABLE Automoviles)
- TRUNCATE (borrar tabla): 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. Si bien, en un principio, esta sentencia parecería ser DML (Lenguaje de Manipulación de Datos), es en realidad una DDL, ya que internamente, el comando TRUNCATE borra la tabla y la vuelve a crear y no ejecuta ninguna transacción.
TRUNCATE TABLE (Automoviles)
6.3 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.
Elementos del lenguaje de manipulación de datos
- SELECT: Consulta registros de la base de datos que satisfagan un criterio determinado.
- INSERT: Carga lotes de datos en la base de datos en una única operación.
- DELETE: Modifica los valores de los campos y registros especificados.
- UPDATE: Elimina registros de una tabla de una base de datos.
Clasificación de los DML
Se clasifican en dos grandes grupos:
- Lenguajes de consulta procedimentales: En este tipo de lenguaje el usuario da instrucciones al sistema para que realice una serie de procedimientos u operaciones en la base de datos para calcular un resultado final.
- Lenguajes de consulta no procedimentales: En los lenguajes no procedimentales el usuario describe la información deseada sin un procedimiento específico para obtener esa información.
0 comentarios