1
Estructuras de SQL
Laura Marcela Calderón Rodríguez
Wilmar Alirio Carrillo Rey
Unidades Tecnológicas de Santander
Motores de base de datos, B192
Jaidiver Lombo Guzmán
22 de febrero del 2024
2
Tabla de contenido
Conceptos Teóricos ......................................................................................................................... 3
Concepto de Motores de Base de Datos ...................................................................................... 3
Qué es un motor de base de datos............................................................................................ 3
¿Cómo gestiona un motor de base de datos la integridad y la concurrencia de datos? ........... 3
Sistemas de Gestión de Base de Datos (SGBD) ......................................................................... 4
¿Qué es un SGBD y cuáles son sus principales funciones? .................................................... 4
Los tipos de SGBD (relacional y no relacional) ...................................................................... 4
Características de Motores de Base de Datos.............................................................................. 6
Oracle....................................................................................................................................... 6
SQL Server. ............................................................................................................................. 7
DB2. ......................................................................................................................................... 7
Funciones del Administrador de Bases de Datos ........................................................................ 8
Ejercicios Prácticos ......................................................................................................................... 8
Creación de una Base de Datos y Tablas .................................................................................... 8
Inserción de Datos ..................................................................................................................... 10
Consultas Básicas ...................................................................................................................... 11
Creación y Gestión de Usuarios ................................................................................................ 15
Revocación de Permisos............................................................................................................ 16
Estructura DDL y DML ............................................................................................................ 17
Diferencia entre DDL y DML ............................................................................................... 17
Tabla de figuras............................................................................................................................. 19
Referencias .................................................................................................................................... 20
3
Conceptos Teóricos
Concepto de Motores de Base de Datos
Qué es un motor de base de datos
Los motores de base de datos son sistemas responsables del almacenamiento,
recuperación y manipulación eficiente de la información. Son fundamentales para el
correcto funcionamiento de las bases de datos, ya que actúan como el componente
principal que organiza y facilita el acceso a los datos. Estos motores gestionan la
interacción entre las aplicaciones y los datos almacenados, brindando una
infraestructura sólida para el manejo de la información en una variedad de entornos,
desde aplicaciones empresariales hasta plataformas en línea. Los motores de base de
datos permiten que las organizaciones gestionen grandes volúmenes de datos de
forma eficiente y escalable, asegurando la integridad y disponibilidad de la
información esencial para la toma de decisiones y la operación diaria de los sistemas
informáticos.
Ejemplos de motores de base de datos incluyen MySQL, que es ampliamente
utilizado por ser de código abierto, y Microsoft SQL Server, otro ejemplo popular.
¿Cómo gestiona un motor de base de datos la integridad y la concurrencia de datos?
La integridad de los datos en una base de datos se asegura mediante la
implementación de reglas y procedimientos de verificación y validación durante el
diseño del flujo de datos. Estas reglas incluyen, por ejemplo, filtrar datos con valores
incorrectos de fecha u hora. En cuanto a la concurrencia de datos, se gestionan
mediante técnicas como el bloqueo, el ordenamiento de marcas de tiempo y el control
de concurrencia optimista. Estas metodologías permiten que múltiples transacciones
4
accedan de manera coordinada a los recursos, evitando inconsistencias y conflictos
entre los datos.
Sistemas de Gestión de Base de Datos (SGBD)
¿Qué es un SGBD y cuáles son sus principales funciones?
Un sistema gestor de base de datos (SGBD) o Database Management System
(DBMS) es un conjunto de programas invisibles para el usuario final con el que se
administra y gestiona la información que incluye una base de datos.
Los gestores de datos o gestores de base de datos permiten administrar todo
acceso a la base de datos, pues tienen el objetivo de servir de interfaz entre esta, el
usuario y las aplicaciones.
Entre sus funciones se encuentran la de permitir a los usuarios de negocio
almacenar la información, modificar datos y acceder a los activos de conocimiento de
la organización. Asimismo, el gestor de base de datos también se ocupa de realizar
consultas y hacer análisis para generar informes.
Además, los sistemas de gestión de base de datos pueden entenderse como
una colección de datos interrelacionados, estructurados y organizados en el
ecosistema formado por dicho conjunto de programas que acceden a ellos y facilitan
su gestión.
Los tipos de SGBD (relacional y no relacional)
Una base de datos relacional es una tipo de base de datos que organiza los
datos en tablas (también llamadas relaciones) con filas y columnas. En una base de
datos relacional, cada fila representa un registro (o tupla) y cada columna representa
un atributo (o campo) de los datos. Las bases de datos relacionales utilizan un
5
lenguaje de consulta estructurado (SQL) para gestionar y recuperar datos.
Ejemplos de sistemas de gestión de bases de datos relacionales ampliamente
utilizados incluyen Oracle Database, MySQL, PostgreSQL (una base de datos
relacional de código abierto) y Microsoft SQL Server.
Las bases de datos no relacionales son un sistema de almacenamiento de
información que se caracteriza por no usar el lenguaje SQL para las consultas. Otra
de sus principales características es que no trabajan con estructuras definidas. Es
decir, los datos no se almacenan en tablas, y la información tampoco se organiza en
registros o campos. Tienen una gran escalabilidad y están pensadas para la gestión de
grandes volúmenes de datos. Por otro lado, a diferencia de las bases de datos
relacionales no cumple con el estándar ACID de atomicidad, consistencia,
aislamiento y durabilidad.
Las bases de datos no relacionales son un tipo de sistema de gestión de bases
de datos diseñado para manejar grandes volúmenes de datos no estructurados o
semiestructurados. A diferencia de las bases de datos relacionales (SQL),
que organizan la información en tablas con filas y columnas y siguen un esquema
rígido, las bases de datos NoSQL permiten almacenar datos en una estructura más
flexible. Esto las hace ideales para aplicaciones que requieren alta disponibilidad,
escalabilidad horizontal y la capacidad de procesar datos de forma rápida y eficiente.
NoSQL abarca una amplia variedad de modelos de datos que incluyen, entre otros,
bases de datos de documentos, clave-valor, de grafos y basadas en columnas, una
gran diversidad de modelos que, sin duda alguna, les permiten adaptarse a diferentes
necesidades y tipos de aplicaciones.
6
Ejemplo: MongoDB es una de las bases de datos NoSQL más populares y
ampliamente utilizada. En lugar de tablas, MongoDB almacena datos en colecciones
de documentos JSON. Es perfecta para aplicaciones que manejan datos diversos,
como catálogos de productos, redes sociales y sistemas de contenido.
Características de Motores de Base de Datos
Oracle
Modelo relacional: los usuarios visualizan los datos en
tablas con el formato filas/columnas.
Herramienta de administración gráfica intuitiva y cómoda
de utilizar.
Control de acceso: tecnologías avanzadas para vigilar la
entrada a los datos.
Protección de datos: seguridad completa en el entorno de
producción y de pruebas y gestión de copias de seguridad.
Lenguaje de diseño de bases de datos muy completo
(PL/SQL): permite implementar diseños "activos", que se pueden
adaptar a las necesidades cambiantes de negocio.
Alta disponibilidad: escalabilidad, protección y alto
rendimiento para la actividad empresarial.
Gestión de usuarios: agilidad en los trámites, reducción de
costes y seguridad en el control de las personas que acceden a las
aplicaciones y a los sistemas
7
SQL Server.
Soporte de transacciones.
Escalabilidad, estabilidad y seguridad.
Soporta procedimientos almacenados.
Incluye también un potente entorno gráfico de
administración, que permite el uso de comandos DDL y DML
gráficamente.
Permite trabajar en modo cliente-servidor, donde la
información y datos se alojan en el servidor y las terminales o clientes
de la red sólo acceden a la información. A demás permite administrar
información de otros servidores de datos.
DB2.
Aplicaciones con el mayor porcentaje de sentencias SQL
fallidas, desbordamientos de clasificación, tiempos de espera de
bloqueo excedidos y puntos muertos, y la proporción más baja de
aciertos de agrupación de almacenamientos intermedios.
Proporción de aciertos de agrupación de almacenamientos
intermedios por agrupación de almacenamientos intermedios,
proporción de aciertos de agrupación de almacenamientos intermedios
por base de datos, tiempos medios de lectura y grabación, actividad de
E/S asíncrona y síncrona, almacén ampliado y actividad de E/S que no
es de agrupación de almacenamientos intermedios.
Bases de datos con el porcentaje más alto de sentencias
8
SQL fallidas, la proporción más baja de aciertos de agrupación de
almacenamientos intermedios y el número más alto de conexiones,
tiempos de espera excedidos de bloqueo y puntos muertos.
Sucesos clave del servidor, el número de conexiones del
servidor, las bases de datos con la proporción más baja de aciertos de
agrupación de almacenamientos intermedios y aplicaciones con el
porcentaje más alto de sentencias SQL fallidas.
Funciones del Administrador de Bases de Datos
Un administrador de bases de datos, o DBA, es responsable de mantener,
proteger y operar bases de datos y también garantiza que los datos se almacenen y
recuperen correctamente. Además, los DBA suelen trabajar con desarrolladores para
diseñar e implementar nuevas funciones y solucionar problemas. Las bases de datos
permiten almacenar un gran número de información de forma organizada para su
posterior consulta o modificación.
Algunas de las funciones de las bases de datos son almacenar información en
un único lugar centralizado, Facilitar el acceso a la información a todos los miembros
de la empresa y mejorar la gestión de la información de clientes y optimizar la
comunicación interna.
Ejercicios Prácticos
Creación de una Base de Datos y Tablas
En el primer ejercicio se deberá crear una Base de datos (Negocio); en la
base de datos crear dos tablas usuarios y productos.
9
Figura 1
Creación de la Base de datos (Negocio).
Nota. Elaboración Propia.
Figura 2
Creación de las tablas Usuario y Productos.
Nota. Elaboración Propia.
10
Inserción de Datos
Insertar al menos cinco registros en cada una de las tablas usuarios y
productos.
Figura 3
Insertar registros.
Nota. Ejemplos de 5 registros de la tabla usuario. Elaboración Propia.
11
Figura 4
Insertar registros.
Nota. Ejemplos de 5 productos de la tabla. Elaboración Propia.
Consultas Básicas
Escribir una consulta SQL para seleccionar todos los registros de la tabla
usuarios y otra para seleccionar todos los registros de la tabla productos.
12
Figura 5
Consulta Select a la tabla usuarios.
Nota. Elaboración Propia.
13
Figura 6
Consulta Select a la tabla productos.
Nota. Elaboración Propia.
Realiza el conteo de la información contenida en una tabla que
prefieras utiliza función COUNT, para identificar.
Conteo de la cantidad de registros realizados en la tabla productos.
14
Figura 7
Conteo de registros
Nota. Conteo de la cantidad de registros realizados en la tabla productos. Elaboración Propia.
Agrupa la información de la tabla que desee de manera ascendente.
Figura 8
Tabla productos de forma ascendente
Nota. Elaboración Propia.
15
Creación y Gestión de Usuarios
Crea un nuevo usuario llamado usuario_test con la contraseña
contrasena123.
Figura 9
Creación de un usuario.
Nota. Elaboración Propia.
Otorga a este usuario permisos para seleccionar, insertar, y actualizar
de las tablas usuarios y productos.
Figura 10
Otorgar Privilegios
Nota. Elaboración Propia.
16
Revocación de Permisos
Revoca los permisos de selección de datos de la tabla productos al
usuario usuario_test.
Figura 11
Revocar Privilegios.
Nota. Elaboración Propia.
Realizar validación de prueba, y asegurarse que
efectivamente no le permita realizar las acciones.
Figura 12
Validación revocación de privilegios
Nota. Elaboración Propia.
17
Estructura DDL y DML
Diferencia entre DDL y DML
DDL (Data Definition Language) es un subconjunto de SQL (Lenguaje de
consulta estructurado) que se utiliza para definir la estructura de una base de datos y
sus objetos, como tablas, vistas, índices y procedimientos. DDL se utilizan para crear,
modificar y eliminar objetos de bases de datos, como tablas, vistas, índices y
procedimientos almacenados. Algunas de las sentencias DDL más comunes son
Create, Alter y Drop.
CREATE: Esta sentencia crea un nuevo objeto de base de datos, como una
tabla, una vista o un índice. Por ejemplo, la siguiente sentencia SQL crea una tabla
llamada "usuarios":
Figura 13
Uso del CREATE.
Nota. Esta sentencia (create) crea un nuevo objeto de base de datos. Elaboración Propia.
18
DML (Data Manipulation Language) es un subconjunto de SQL (lenguaje de
consulta estructurado) que se utiliza para manipular los datos de una base de
datos. DML Las sentencias SQL se utilizan para insertar, actualizar y eliminar datos
en una base de datos.
INSERT: Esta sentencia se utiliza para insertar nuevos datos en una tabla.
Figura 14
Uso del INSERT
Nota. Esta sentencia se sirve para insertar nuevos datos en una tabla.
19
Tabla de figuras
Figura 1 .......................................................................................................................................... 9
Figura 2 .......................................................................................................................................... 9
Figura 3 ........................................................................................................................................ 10
Figura 4 ........................................................................................................................................ 11
Figura 5 ........................................................................................................................................ 12
Figura 6 ........................................................................................................................................ 13
Figura 7 ........................................................................................................................................ 14
Figura 8 ........................................................................................................................................ 14
Figura 9 ........................................................................................................................................ 15
Figura 10 ...................................................................................................................................... 15
Figura 11 ...................................................................................................................................... 16
Figura 12 ...................................................................................................................................... 16
Figura 13 ...................................................................................................................................... 17
Figura 14 ...................................................................................................................................... 18
20
Referencias
Naeem, T. (14 de febrero de 2025). Sistemas de gestión de bases de datos
relacionales (RDBMS): todo lo que necesita saber. Astera.
[Link]
Navarro, S. (4 de febrero de 2025). ¿Qué son los motores de bases de datos? [6
ejemplos]. Keep coding. [Link]
bases-de-datos/
Bases de datos NoSQL: qué son y ejemplos. (Septiembre de 2024). Esic
university. [Link]
nosql-ejemplos-c
Diferencia entre DDL y DML. (19 de enero de 2023). AppMaster.
[Link]