Glosario
Lectura 00
1 Base de Datos
- Recopilación organizada de información o datos estructurados.
- Está controlado por un Sistema de Gestión de Bases de Datos (DBMS).
2 Base de Datos NoSQL
- DBMS en el que los datos almacenados no requieren estructuras fijas como tablas.
- Normalmente no soportan operaciones
JOIN
. - No garantizan complemente
ACID
(atomicidad, consistencia, aislamiento, durabilidad). - Escalan bien horizontalmente.
3 Base de Datos Relacional
- Toda la información se almacena en tablas (filas, columnas).
4 Disparador
- Trigger.
- Unidad de programa almacenado, compilado y escrito en PL/SQL o Java.
- Procedimiento que se ejecuta automáticamente en respuesta a ciertos eventos en una tabla o vista.
- Permiten realizar acciones adicionales cuando se insertan, actualizan o eliminan datos.
Ejemplo:
CREATE TRIGGER registrar_nuevo_empleado
AFTER INSERT ON empleados
FOR EACH ROW
BEGIN
INSERT INTO auditoria_empleados (empleado_id, accion, fecha_hora)
VALUES (NEW.id, 'INSERT', NOW());
END;
- Trigger: registrar_nuevo_empleado
- Al ingresar un nuevo empleado en la tabla empleados, el trigger inserta automáticamente un registro en la tabla auditoria_empleados.
5 Esquema
- Estructura lógica que agrupa y organiza objetos de bases de datos, como tablas, vistas, procedimientos almacenados, índices, secuencias, y más.
- Es una forma de dividir y organizar los datos dentro de una base de datos para facilitar su gestión y administración.
Ejemplo
CREATE SCHEMA ventas;
CREATE TABLE ventas.clientes (
id INT PRIMARY KEY,
VARCHAR(100),
nombre VARCHAR(100)
email );
- Se crea el esquema ventas
- Se crea una tabla clientes dentro del esquema.
- El esquema ventas ayuda a organizar la tabla clientes dentro de un contexto específico.
- Es útil si la base de datos es grande (muchas tablas).
6 Índice
- Es una estructura de datos opcional. Se puede crear en una o más columnas de una tabla.
- Pueden aumentar el rendimiento de la recuperación de datos.
- Son útiles cuando las aplicaciones consultan con frecuencia una fila o rango de filas específico.
- Son lógica y físicamente independiente de los datos.
7 Lenguaje de Consulta Estructurado (SQL)
- Structured Query Language.
- Lenguaje diseñado para el acceso a Sistemas de Gestión de Bases de datos Relacionales.
8 Lenguaje de Definición de Datos (DDL)
- Data Definition Language.
- Sentencias SQL que sirven para definir los datos o modificar su definición.
- Por ejemplo, la creación de tablas, índices, vistas, secuencias, entre otros.
- Ejemplos comandos:
CREATE
,ALTER
,DROP
,TRUNCATE
.
9 Lenguaje de Manipulación de Datos (DML)
- Data Manipulation Language.
- Sentencias SQL que permiten manipular, o procesar los datos.
- Por ejemplo:
INSERT
,DELETE
,SELECT
,UPDATE
.
10 Objeto de Esquema
- Cualquier entidad o elemento que reside dentro de un esquema en una base de datos.
- Ejemplos: tablas, índices, vistas, secuencias, funciones, triggers, entre otros.
11 PL/SQL
- Procedural Language/Structured Query Language.
- Es un lenguaje de programación procedimental y estructurado, que se utiliza en conjunto con SQL en bases de datos Oracle.
- Extiende las capacidades de SQL, al añadir características propias de lenguajes de programación, como:
- variables
- estructuras de control (bucles, condicionales)
- procedimientos
- funciones
- manejo de excepciones
12 Secuencia
- Se utiliza para generar números únicos y secuenciales.
Ejemplo
CREATE SEQUENCE nombre_secuencia
START WITH 1 -- Valor inicial
INCREMENT BY 1 -- Incremento
MINVALUE 1 -- Valor mínimo
MAXVALUE 999999 -- Valor máximo
CACHE 20; -- Cuántos números deben estar en memoria para mejorar el rendimiento
INSERT INTO nombre_tabla (id_columna, otra_columna)
VALUES (nombre_secuencia.NEXTVAL, 'valor');
13 Vista
- Presentaciones personalizadas de datos en una o más tablas u otras vistas.
Ejemplo
CREATE VIEW EmpleadosConDepartamento AS
SELECT e.EmpleadoID, e.Nombre + ' ' + e.Apellido AS NombreCompleto, e.Salario, d.Nombre AS NombreDepartamento
FROM Empleados e
JOIN Departamentos d ON e.DepartamentoID = d.DepartamentoID;
SELECT * FROM EmpleadosConDepartamento;
- Creo una vista que muestra los datos de ambas tablas
Empleados
yDepartamentos