Bases de datos
6 de Mayo 2021, Jesús Díaz
El modelado ER se basa en tres conceptos:
• Entidades: objetos del mundo real, de los que nos interesa modelizar algunas propiedades, y que son distinguibles de otros objetos.
• Relaciones: asociaciones e interacciones entre entidades.
• Atributos: son las propiedades que nos interesan de las entidades y de algunas relaciones.
____________________________________
Entidades(objetos y conceptos)
Atributos
Atributos univaluados y multivaluados
Atributos simples y compuestos
atributos derivados
Claves
claves candidatas
Claves simples y compuestas
clave primaria
clave alternativa
claves sintéticas
Relaciones
Grado de las relaciones
relaciones binarias
Atributos a las relaciones
Conectividad de las relaciones binarias
Relaciones uno a uno (1: 1)
Relaciones uno a muchos (1: N)
Relaciones muchos a muchos
conectividades mínimas
relaciones recursivas
relaciones ternarias
Conectividad de las relaciones ternarias
Tipo de entidades
Entidades fuertes y entidades débiles
Extensiones al modelo entidad-relación
Generalización / Especialización
Términos claves
Lenguajes SQL: DML
Consulta de datos: sentencia SELECT
SELECT DISTINCT
Alias
Sentencia SELECT con criterios WHERE
Operadores de comparación para cadenas de texto
Operadores de comparación por números y fechas
Especificar rangos con BETWEEN
Unión de criterios con AND y OR
Combinación de múltiples AND y OR
operador IN
El valor NULL
Ejemplo de cómo se puede utilizar NULL
Uso de comodines en la cláusula LIKE
Comparación de cadenas con LIKE y con =
Sentencia SELECT con cláusula ORDER BY
Sentencia SELECT con cláusula LIMIT
Sentencia SELECT con cláusula GROUP BY
Uso de COUNT con GROUP BY
Uso de AVG y SUM con GROUP BY
Uso de GROUP BY por más de una columna
Restricción de filas con HAVING
Funciones integradas
Funciones de agregación
Funciones de tiempo y fechas
Obtener partes de una fecha
Obtener el tiempo actual
Cálculo de fechas
Formato de las fechas
funciones matemáticas
Funciones de hash y contraseñas
Funciones para cadenas
Funciones de control de la ejecución
Unión de tablas (JOIN)
Unión interior (INNER JOIN)
Unión exterior izquierda (LEFT OUTER JOIN)
Unión exterior derecha (RIGHT OUTER JOIN)
Unión cruzada (CROSS JOIN)
Ejemplos
FROM de más de una tabla
Subconsultas
Subconsultas con operadores de comparación
Subconsultas y el operador IN
Operador IN y LIMIT
Los modificadores ANY y ALL
Subconsultas con EXISTS y NOT EXISTS
Subconsultas en la cláusula SELECT
Subconsultas en la cláusula FROM
Subconsultas en la cláusula HAVING
Operaciones de conjuntos: UNION, INTERSECT, EXCEPT
Modificación de datos: sentencias INSERT, UPDATE y DELETE
sentencia INSERT
Insertar filas con una sentencia SELECT
INSERT con claves autogeneradas
INSERT sin llaves autogeneradas
sentencia UPDATE
Inclusión de subconsultas en una sentencia UPDATE
Sentencia DELETE
Términos claves
____________________________________
Lenguajes SQL: DCL
Introducción a PostgreSQL
El cliente psql
Creación y eliminación de bases de datos
esquemas
Gestión de usuarios
Usuarios y roles
Creación de roles
Relación entre los usuarios del sistema y los de PostgreSQL
Ejemplos de creación de usuarios y roles
Conexión con contraseña
Configuración del acceso
Eliminación de roles
Uso de roles como grupos de usuarios
Herencia de privilegios
-3. Gestión de los privilegios
propietario
privilegios
Asignación de privilegios
Privilegios para tablas
Privilegios para columnas
Privilegios para secuencias
Privilegios para bases de datos
Privilegios para funciones
Privilegios para esquemas
Revocación de privilegios
Privilegios por defecto y rol PUBLIC
Mostrar los privilegios
Privilegios del propietario
_____________________________________________
MongoDB
El MongoDB es un SGBD documental. Esto significa que, a diferencia de los sistemas relacionales más habituales, la unidad de trabajo del MongoDB es el documento.
Los documentos tienen una representación directa en muchos lenguajes de programación. Esto significa que la traducción entre los datos de una BD y los objetos a memoria es mucho más sencilla que en una base de datos relacional.
Introducción a MongoDB
instalación
Formato JSON
Operaciones básicas
Inserción de documentos
consultas básicas
find () y findOne ()
pretty (), skip () y límite ()
Consultas con filtros
Operadores de comparación
Operadores $ and y $ oro
Operador $ in
Recuento de resultados
Consultas con proyecciones
Ordenación de resultados
Modificación de documentos
Borrado de documentos
consultas complejas
Consultas en documentos incrustados
Consultas en arrays
Consultas en arrays de documentos incrustados
Consulta por existencia de un campo
Consultas por elementos que cumplen alguna condición
Otras herramientas útiles
Pasar un cursor en un array
Búsquedas expresadas en JavaScript
Ver todos los campos de un documento
El Aggregation framework
El pipeline
Estadio
$Project
$match
$límite
$sort
$skip
$unwind
$group
operadores
$first
$push
$slice
$addToSet
$arrayElemAt