Módulo: Gestión de Bases de DatosCiclo Formativo: Administración de Sistemas Informáticos y Redes
Eva Tortosa Sánchez
Dpto. Informática y Comunicaciones
Diapositivas realizadas a partir de los apuntes elaborados por Eva Tortosa Sánchez para el módulo “Gestión de Bases de Datos” e inscritos en el Registro de la Propiedad Intelectual “SafeCreative” con todos los derechos reservados.
Unidad 3: El Modelo de Bases de Datos Relacional
3.1 Introducción.3.2 Estructura y elementos del modelo relacional. Conceptos básicos.3.3 Restricciones.3.4 Esquema de una relación.3.5 Álgebra y cálculo relacional.
3.5.1 Operaciones básicas de Álgebra relacional.3.6 Lenguajes relacionales.3.7 Lenguaje de consulta estructurado o SQL.
Módulo: Gestión de Bases de DatosCiclo Formativo: Administración de Sistemas Informáticos y RedesUnidad 3: El Modelo de Bases de Datos Relacionales.
Eva Tortosa Sánchez
Dpto. Informática y Comunicaciones
3.1 IntroducciónComo vimos en la Unidad 2:==> Una Base de Datos es una colección de datos almacenados en un
soporte informático de acceso directo. Los datos de una base de datos están lógicamente relacionados entre sí y estructurados de acuerdo con un modelo capaz de recoger el máximo contenido semántico, describiendo, así, un modelo del mundo real.
==> Un Sistema Gestor de Bases de Datos es un conjunto coordinado de programas, procedimientos, lenguajes, etc.., que suministra, tanto a los usuarios informáticos, como no informáticos y al Administrador, los medios necesarios para describir, recuperar y manipular los datos integrados en la BD, asegurando su confidencialidad y seguridad.
Módulo: Gestión de Bases de DatosCiclo Formativo: Administración de Sistemas Informáticos y RedesUnidad 3: El Modelo de Bases de Datos Relacionales.
Eva Tortosa Sánchez
Dpto. Informática y Comunicaciones
3.1 Introducción
==> Las Bases de Datos se estructuran según un Modelo de Datos. Existen varios:
➢ Modelo Jerárquico (obsoleto)➢ Modelo en Red (obsoleto)➢ Modelo Relacional➢ Modelo Orientado a objtetos.➢ Modelo Relacional Orientado a Objetos➢ Modelo No Relacional o NoSQL
Módulo: Gestión de Bases de DatosCiclo Formativo: Administración de Sistemas Informáticos y RedesUnidad 3: El Modelo de Bases de Datos Relacionales.
Eva Tortosa Sánchez
Dpto. Informática y Comunicaciones
3.1 Introducción==> El modelo relacional se ha establecido como el principal modelo de datos para aplicaciones de procesamiento de datos y gestión de empresas, por lo que a partir de ahora nos centraremos en este modelo.
==> El modelo No Relacional (NoSQL) ==> Los datos en Internet tienen otras necesidades: Velocidad, Gran volumen de datos, ...
* Estas nuevas necesidades priman frente a la necesidad de Integridad y la No redundancia
Por tanto, hoy por hoy, si nuestro Sistema de Información es:1. Para gestionar datos de empresas, banca, etc. ==> Modelo relacional parece más adecuado2. Para gestionar empresa en Internet ==> Modelo No Relacional parece más adecuado
Módulo: Gestión de Bases de DatosCiclo Formativo: Administración de Sistemas Informáticos y RedesUnidad 3: El Modelo de Bases de Datos Relacionales
Eva Tortosa Sánchez
Dpto. Informática y Comunicaciones
3.2 Estructura y elementos del modelo relacionalEn el modelo Relacional:
DATOS ==> tablas organizadas en columnas (campos)RELACIONES ==> Asociaciones entre tablas a través de valores
comunes en ciertas columnas (Ej// codcliente de factura == codcliente de clientes)
Una BD Relacional ==> Colección de relaciones (tablas) normalizadas que varían en el tiempo.
Estructura de toda BD Relaciónal ==> Según mod. de ref. ANSI/SPARC
Nivel Interno ==> Definido mediante sentencias de DDLNivel Conceptual ==> Definido mediante sentencias de DDLNivel Externo ==> Definido mediante sentencias de DML y objetos como vistas
Módulo: Gestión de Bases de DatosCiclo Formativo: Administración de Sistemas Informáticos y RedesUnidad 3: El Modelo de Bases de Datos Relacionales
Eva Tortosa Sánchez
Dpto. Informática y Comunicaciones
3.2 Estructura y elementos del modelo relacional
Elementos del modelo Relacional:Entidad.- Objeto real o abstracto de interés para la empresa sobre la que se
almacena información Relación o Tabla relacional.- Estructura formada por filas y columnas que
sirve para almacenar los datos de una entidadTupla.- Cada fila de una tabla relacionalAtributo.- Cada columna de una tabla relacionalClave primaria.- Identificador de una sola fila de una tabla relacionalVista.- Subconjunto de una o varias tablas relacionadas definida mediante
operaciones relacionales, servirá para definir los subesquemas externosDominio.- Conjunto de valores posibles de un atributoGrado.- Número de atributos de una tabla relacionalCardinalidad.- Número de tuplas de una tabla relacional
Módulo: Gestión de Bases de DatosCiclo Formativo: Administración de Sistemas Informáticos y RedesUnidad 3: El Modelo de Bases de Datos Relacionales
Eva Tortosa Sánchez
Dpto. Informática y Comunicaciones
Características de una relación o tabla relacional
Módulo: Gestión de Bases de DatosCiclo Formativo: Administración de Sistemas Informáticos y RedesUnidad 3: El Modelo de Base de Datos Relacional
Eva Tortosa Sánchez
Dpto. Informática y Comunicaciones
3.3 Restricciones
Las RESTRICCIONES garantizan la INTEGRIDAD de los datos ==> Limitan los posibles valores de los datos.
NECESITAMOS SABER QUÉ ES:CLAVE PRIMARIA ==>
Campo o conjunto de campos que identifican univocamente a una sola fila de una tabla.
CLAVE FORÁNEA ==> Campo o conjunto de campos
que son clave primaria en la misma o en otra tabla
Módulo: Gestión de Bases de DatosCiclo Formativo: Administración de Sistemas Informáticos y RedesUnidad 3: El Modelo de Base de Datos Relacional
Eva Tortosa Sánchez
Dpto. Informática y Comunicaciones
3.3 RestriccionesCLAVE PRIMARIA ==>
CLAVE FORÁNEA ==>
• Una tabla ==> una clave primaria.• Menor núm. posible de atributos• Atributo/s de menor tamaño
posible
Módulo: Gestión de Bases de DatosCiclo Formativo: Administración de Sistemas Informáticos y RedesUnidad 3: El Modelo de Base de Datos Relacional
Eva Tortosa Sánchez
Dpto. Informática y Comunicaciones
3.3 RestriccionesEjercicio: Identifica
CLAVES PRIMARIAS ==> departamentos (numde)empleados (numem)alumnos (numexped)materias (codmateria)matriculas (codmateria,
numexped)CLAVES FORÁNEAS ==>
departamentos ---empleados (numde)alumnos ---materias ---matriculas (numexped)
(codmateria)
Módulo: Gestión de Bases de DatosCiclo Formativo: Administración de Sistemas Informáticos y RedesUnidad 3: El Modelo de Base de Datos Relacional
Eva Tortosa Sánchez
Dpto. Informática y Comunicaciones
3.3 RestriccionesEjercicio: Identifica
CLAVES PRIMARIAS ==> departamentos (numde)empleados (numem)alumnos (numexped)materias (codmateria)matriculas (codmateria,
numexped)CLAVES FORÁNEAS ==>
departamentos ---empleados (numde)alumnos ---materias ---matriculas (numexped)
(codmateria)
Módulo: Gestión de Bases de DatosCiclo Formativo: Administración de Sistemas Informáticos y RedesUnidad 3: El Modelo de Base de Datos Relacional
Eva Tortosa Sánchez
Dpto. Informática y Comunicaciones
3.3 Restricciones
TIPOSDE
RESTRICCIONES
DE USUARIO ==> Impuestas por los usuarios de la BD
Ej// Los empleados tienen un departamento
DE INTEGRIDAD DE CLAVE o ENTIDAD==> La clave primaria debe existir, es única y no
puede tomar valores nulos
Ej// El núm de empleado existe y es único para cada empleado, ya que lo identifica)
DE INTEGRIDAD REFERENCIAL==> No puede existir un valor donde es clave
foránea si no existe donde es clave primaria
Ej// No puede haber un empleado con un núm de depto que no exista en la tabla deptos
Módulo: Gestión de Bases de DatosCiclo Formativo: Administración de Sistemas Informáticos y RedesUnidad 3: El Modelo de Base de Datos Relacional
Eva Tortosa Sánchez
Dpto. Informática y Comunicaciones
3.3 Restricciones
PARA EL SEGUNDO EJEMPLO
DE USUARIO ==> Impuestas por los usuarios de la BDEj// Los alumnos se matriculan de 1 o más materias
DE INTEGRIDAD DE CLAVE o ENTIDAD==> La clave primaria debe existir, es única y no
puede tomar valores nulos Ej// El núm de expediente existe y es único para
cada alumno/a, ya que lo identificaDE INTEGRIDAD REFERENCIAL
==> No puede existir un valor donde es clave foránea si no existe donde es clave primaria
Ej// No puede haber un alumno/a matriculado de una materia que no exista
materiascodmateria nommateria ….
1 Matemáticas2 Lengua3 CCNN4 CCSS5 Inglés6 Francés
matriculanumexped nummateria nota
1 11 21 52 22 32 52 87
Módulo: Gestión de Bases de DatosCiclo Formativo: Administración de Sistemas Informáticos y RedesUnidad 3: El Modelo de Base de Datos Relacional
Eva Tortosa Sánchez
Dpto. Informática y Comunicaciones
3.3 Restricciones. EN LA RESTRIC DE INTEGR. REFERENCIAL SE PLANTEA:
OBJETIVO ==> Asegurar que después de la MODIFICACIÓN/ELIMINACIÓN de datos relacionados, la BD sigue siendo INTEGRA.
SOLUCIONES ==> Los SGBD Relacionales proponen varias posibilidades que utilizaremos según nuestras necesidades y la estructura de nuestra BD.
SOLUCIONES ANTE
MODIFICACIÓN/ ELIMINACIÓN
DE DATOS RELACIONADOS
A) RESTRINGIDA
B) EN CASCADA
C) ANULACIÓN
Podemos optar por distintas solucionesPara distintas tablas e incluso en la misma tabla para modificación / eliminación
Módulo: Gestión de Bases de DatosCiclo Formativo: Administración de Sistemas Informáticos y RedesUnidad 3: El Modelo de Base de Datos Relacional
Eva Tortosa Sánchez
Dpto. Informática y Comunicaciones
3.3 Restricciones. EJEMPLO
==> numde en la tabla EMPLEADOS es clave foranea ==> hace referencia a numde de la tabla DEPTOS
==> numde en la talba DEPTOS es clave primariaOPCIONES PARA LA RESTRICCIÓN DE INTEGRIDAD REFERENCIAL:OPCIÓN A)RESTRINGIDA en ELIMINACIÓN ==> No se permite eliminar un departamento si existen empleados de ese departamento
RESTRINGIDA en MODIFICACIÓN ==> No se permite modificar el código de departamento si existen empleados de ese departamentoOPCIÓN B) ELIMINACIÓN en CASCADA ==> Si eliminamos un departamento, se eliminarán en cascada todos los empleados de ese departamento
MODIFICACIÓN en CASCADA ==> Si modificamos el código de un departamento, se eliminarán en cascada todos los codigos de depto en la tabla empleados que tuvieran ese departamento
Módulo: Gestión de Bases de DatosCiclo Formativo: Administración de Sistemas Informáticos y RedesUnidad 3: El Modelo de Base de Datos Relacional
Eva Tortosa Sánchez
Dpto. Informática y Comunicaciones
3.3 Restricciones. SEGUIMOS CON NUESTRO EJEMPLO:
==> numde en la tabla EMPLEADOS es clave foranea ==> hace referencia a numde de la tabla DEPTOS
==> numde en la talba DEPTOS es clave primariaOPCIONES PARA LA RESTRICCIÓN DE INTEGRIDAD REFERENCIAL:OPCIÓN C)
ANULACIÓN en ELIMINACIÓN ==> Si eliminamos un departamento, se pondrá el valor NULL en todos números de deptos de los empleados de ese departamento
ANULACIÓN en MODIFICACIÓN ==> Si modificamos el código de un departamento, se pondrá el valor NULL en todos los codigos de depto en la tabla empleados que tuvieran ese departamento
NOTA ==> Podremos combinar las distintas opciones como creamos mejor, según el caso
EJ1// Eliminación restringida y modificación en cascadaEJ2// Eliminación en cascada y modificación en cascada…...
Módulo: Gestión de Bases de DatosCiclo Formativo: Administración de Sistemas Informáticos y RedesUnidad 3: El Modelo de Base de Datos Relacional
Eva Tortosa Sánchez
Dpto. Informática y Comunicaciones
3.4 Esquema de una Relación
➔ Es la estructura lógica de una tabla relacional en el esquema relacional.
➔ Para cada tabla relacional o relación, se representan todos sus atributos y sus dominios.
➔ Por simplicidad obviamos los dominios. ==> Suponemos que son evidentes dado su nombre
➔ La clave primaria se representará con un subrayado doble.
➔ Las claves foráneas se representarán mediante un asterisco (*) a la derecha del atributo o atributos que es o son clave foránea:
Ejercicio// Obtén el esquema de las relaciones de los ejemplos de las diapositivas anteriores
Eva Tortosa Sánchez
Dpto. Informática y Comunicaciones
Módulo: Gestión de Bases de DatosCiclo Formativo: Administración de Sistemas Informáticos y RedesUnidad 3: El Modelo de Base de Datos Relacional3.4 Esquema de una Relación. Ejercicios: Obtén los siguientes esquemas. Describe las claves foráneasEjercicio 1. Departamentos y Empleados
deptos(numde, nomde, presupuesto, ...)empleados(numem, numde*, nomem, extelem, fecnacim, fecingreso, …)
DESCRIPCIÓN DE CLAVES FORÁNEAS:deptos ==> no tiene empleados ==>
(numde) REFERENCES deptos(numde)
ON DELETE ON UPDATE
Ejercicio 2. Alumnos – Materias – Matrículas ==> Hazlo tú
Eva Tortosa Sánchez
Dpto. Informática y Comunicaciones
Módulo: Gestión de Bases de DatosCiclo Formativo: Administración de Sistemas Informáticos y RedesUnidad 3: El Modelo de Base de Datos Relacional
EJERCICIOEn el siguiente Esquema de relaciones o relacional: elige las claves primarias y foráneas.Describe las claves foráneas teniendo en cuenta lo siguiente:
1. Podemos tener productos cuya categoría sea NULL2. No hay categorías sin proveedor3. No se pueden modificar datos de proveedores4. No puede haber un pedido sin producto
Módulo: Gestión de Bases de DatosCiclo Formativo: Administración de Sistemas Informáticos y RedesUnidad 3: El Modelo de Base de Datos Relacional
Eva Tortosa Sánchez
Dpto. Informática y Comunicaciones
3.5 Algebra y Cálculo RelacionalÁlgebra relacional==> Conj. de operaciones que opera con relaciones (tablas relacionales)==> El resultado de las operaciones siempres es otra relación (tab. Relacion.)==> Las operaciones se pueden anidar.
Cálculo relacional==> Mediante fórmulas, se opera sobre conjuntos de tuplas o vistas.==> El resultado es un conjunto de filas o vistas.Ejemplos de cálculo relacional http://users.dsic.upv.es/~emarzal/bda/PDF%20Anteriores/Tema2b_ejer.pdf
Módulo: Gestión de Bases de DatosCiclo Formativo: Administración de Sistemas Informáticos y RedesUnidad 3: El Modelo de Base de Datos Relacional
Eva Tortosa Sánchez
Dpto. Informática y Comunicaciones
3.5.1 Operaciones de Algebra Relacional
Operaciones básicas ==> SELECCIÓN PROYECCIÓN PRODUCTO CARTESIANO UNIÓN DIFERENCIA
Operaciones derivadas ==> INTERSECCIÓN REUNIÓN NATURAL (JOIN) DIVISIÓN AGRUPACIÓN
TODAS ==> Operan con 1 o 2 relaciones y como resultado obtienen otra relación
SON IMPRESCINDIBLES
SE PODRÍAN OBTENER COMBINANDO LAS BÁSICAS
Módulo: Gestión de Bases de DatosCiclo Formativo: Administración de Sistemas Informáticos y RedesUnidad 3: El Modelo de Base de Datos Relacional
Eva Tortosa Sánchez
Dpto. Informática y Comunicaciones
3.5.1 Operaciones de Algebra Relacional
0. OPERADOR DE ASIGNACIÓN (←)
Cuando necesitamos guardar el resultado de efectuar una o varias operaciones, de forma que podamos reutilizar dicho reusltado usaremos el operador de asignación:
RAUX ← R1 U R2
Esto es, la relación o tabla relacional RAUX contendrá el resultado de la operación
R1 U R2
Nota.- Tanto R1 como R2 son relaciones o tablas relacionales
Módulo: Gestión de Bases de DatosCiclo Formativo: Administración de Sistemas Informáticos y RedesUnidad 3: El Modelo de Base de Datos Relacional
Eva Tortosa Sánchez
Dpto. Informática y Comunicaciones
3.5.1 Operaciones de Algebra Relacional
1. SELECCIÓN – SELECT ==> SELECCIÓN DE FILAS QUE CUMPLAN UNA CONDICIÓN
➢ Operación unaria ==> Opera con una relación.
TAMBIÉN: R2 <--- (Cuando necesitemos reservar el resultado)
R ==> Una relación (tabla relacional)
P ==> Expresion/es lógica/s (<, >, =, <>, …) También combinadas con AND, OR
Módulo: Gestión de Bases de DatosCiclo Formativo: Administración de Sistemas Informáticos y RedesUnidad 3: El Modelo de Base de Datos Relacional
Eva Tortosa Sánchez
Dpto. Informática y Comunicaciones
3.5.1 Operaciones de Algebra Relacional
2. PROYECCIÓN – PROYECT ==> NOS QUEDAMOS CON LA/S COLUMNAS QUE NOS INTERESEN
➢ Operación unaria ==> Opera con una relación.
TAMBIÉN: R2 <--- (Cuando necesitemos reservar el resultado)
R ==> Una relación (tabla relacional)
A1,A2, An ==> Atributo/s separados por ',' También expresiones (+, *, concatenac, ...)
Módulo: Gestión de Bases de DatosCiclo Formativo: Administración de Sistemas Informáticos y RedesUnidad 3: El Modelo de Base de Datos Relacional
Eva Tortosa Sánchez
Dpto. Informática y Comunicaciones
3.5.1 Operaciones de Algebra Relacional
3. REUNIÓN NATURAL – JOIN ==> REUNIMOS 2 Ó MAS TABLAS HORIZONTALMENTE (columna a columna)
CADA FILA O TUPLA DE LA TABLA RESULTANTE ==>
SE REUNEN UNA FILA O TUPLA DE CADA TABLA PARA LAS QUE SE CUMPLE ==> COINCIDE EL VALOR DE LAS COLUMNAS
POR LAS QUE HACEMOS LA REUNIÓN
Operación binaria ==> Opera con más de una relación.Operación derivada ==> Podríamos obtener el mismo resultado combinando varias
operaciones básicas
Es una de las operaciones más útiles del modelo relacional
TAMBIÉN: R2 <--- (Cuando necesitemos reservar el resultado)
Módulo: Gestión de Bases de DatosCiclo Formativo: Administración de Sistemas Informáticos y RedesUnidad 3: El Modelo de Base de Datos Relacional
Eva Tortosa Sánchez
Dpto. Informática y Comunicaciones
3.5.1 Operaciones de Algebra Relacional
3. REUNIÓN NATURAL – JOIN ==> REUNIMOS 2 Ó MAS TABLAS HORIZONTALMENTE (columna a columna)
CADA FILA O TUPLA DE LA TABLA RESULTANTE ==>
SE REUNEN UNA FILA O TUPLA DE CADA TABLA PARA LAS QUE SE CUMPLE ==> COINCIDE EL VALOR DE LAS COLUMNAS
POR LAS QUE HACEMOS LA REUNIÓN
Operación binaria ==> Opera con más de una relación.Operación derivada ==> Podríamos obtener el mismo resultado combinando varias
operaciones básicas
Es una de las operaciones más útiles del modelo relacional
TAMBIÉN: R2 <--- (Cuando necesitemos reservar el resultado)
Módulo: Gestión de Bases de DatosCiclo Formativo: Administración de Sistemas Informáticos y RedesUnidad 3: El Modelo de Base de Datos Relacional
Eva Tortosa Sánchez
Dpto. Informática y Comunicaciones
3.5.1 Operaciones de Algebra Relacional
2. REUNIÓN NATURAL – JOIN a relación.EJEMPLO
R y S==> Relaciones (tablas relacionales)
REUNIMOS CADA FILA DE EMPLEADOS CON CADA FILA DE DEPTOS EN LAS QUE COINCIDA LOS CAMPOS DE REUNIÓN
Módulo: Gestión de Bases de DatosCiclo Formativo: Administración de Sistemas Informáticos y RedesUnidad 3: El Modelo de Base de Datos Relacional
Eva Tortosa Sánchez
Dpto. Informática y Comunicaciones
3.5.1 Operaciones de Algebra Relacional (select – proyect - join)
EJEMPLO.- Nombre de alumnos matriculados en la materia 2
matriculanumexped nummateria nota
1 11 21 52 22 32 52 87
numexped nomalumno diralumno …1 Juán C/ Agua2 María C/ Viento3 Isabel C/ Luz4 Lourdes C/ Andalucía5 Julián Avda. Del Mar
RESULTADOJuánMaría
1. R_AUX ←σ(1)(matricula)
2. R_AUX_2 ← alumnos (2) R_AUX
3. RESULTADO ←π(3) (R_AUX_2)
DONDE: (1) nummateria = 2 (2) alumnos.numexped = R_AUX.numexped (3) nomalumno
EN ÁLGEBRA RELACIONAL
En un solo paso:
RESULTADO ←π(3) (alumnos
(2) σ
(1)(matricula))
Módulo: Gestión de Bases de DatosCiclo Formativo: Administración de Sistemas Informáticos y RedesUnidad 3: El Modelo de Base de Datos Relacional
Eva Tortosa Sánchez
Dpto. Informática y Comunicaciones
3.5.1 Operaciones de Algebra Relacional (select – proyect - join)
EJEMPLO 2.- Dado el esquema relacional de nuestro centro, averigua el nombre de los alumnos matriculados en “Lengua”
materiascodmateria nommateria ….
1 Matemáticas2 Lengua3 CCNN4 CCSS5 Inglés6 Francés
matriculanumexped nummateria nota
1 11 21 52 22 32 52 87
numexped nomalumno diralumno …1 Juán C/ Agua2 María C/ Viento3 Isabel C/ Luz4 Lourdes C/ Andalucía5 Julián Avda. Del Mar
RESULTADOJuánMaría
ÁLGEBRARELACIONAL
Módulo: Gestión de Bases de DatosCiclo Formativo: Administración de Sistemas Informáticos y RedesUnidad 3: El Modelo de Base de Datos Relacional
Eva Tortosa Sánchez
Dpto. Informática y Comunicaciones
3.5.1 Operaciones de Algebra Relacional
EJEMPLO 2.- Dado el esquema relacional de nuestro centro, averigua el nombre de los alumnos matriculados en “Lengua”
VEÁMOSLO MÁS DESPACIO ==>
RESULTADO <== π(4)(σ
(1)(materias)
(2)matriculas
(3)alumnos)
(1) nommateria = 'Lengua'(2) materias.codmateria = matriculas.nummateria(3) matriculas.numexped = alumnos.numexped(4) alumnos.nomalumno
ᄎ
Buscamos la fila de la materia lengua
ᄎ
Reunimos la materia lengua con las matriculas y los alumnos matriculados
Por último, nos quedamos solo con el nombre del alumnado que es lo que nos interesa
Módulo: Gestión de Bases de DatosCiclo Formativo: Administración de Sistemas Informáticos y RedesUnidad 3: El Modelo de Base de Datos Relacional
Eva Tortosa Sánchez
Dpto. Informática y Comunicaciones
3.5.1 Operaciones de Algebra Relacional
4. UNIÓN ==> UNIMOS 2 Ó MAS TABLAS (VERTICALMENTE)
LAS TABLAS QUE QUERAMOS UNIR DEBEN CUMPLIR:
==> MISMO NÚMERO DE COLUMNAS (MISMO GRADO) ==> LAS COLUMNAS QUE OCUPEN LA MISMA POSICIÓN EN LAS
DISTINTAS TABLAS, DEBEN CONTENER EL MISMO TIPO DE DATOS(MISMO DOMINIO)
Operación binaria ==> Opera con más de una relación.Operación básica ==> No podemos obtener el mismo resultado combinando otras.
➢ Esta operación tiene muchas aplicaciones, por ejemplo nos va a permitir añadir filas nuevas a una tabla relacional, por ejemplo un alumno nuevo a la tabla alumnos.
Módulo: Gestión de Bases de DatosCiclo Formativo: Administración de Sistemas Informáticos y RedesUnidad 3: El Modelo de Base de Datos Relacional
Eva Tortosa Sánchez
Dpto. Informática y Comunicaciones
3.5.1 Operaciones de Algebra Relacional (union)
EJEMPLO.- Se acaba de matricular en nuestro centro “Sonia” cuya dirección es “Avda. Del Sol nº 9”
EN ÁLGEBRA RELACIONAL
alumnos←alumnos U (6,'Sonia','Avda. Del Sol nº 9','')
numexped nomalumno diralumno …1 Juán C/ Agua2 María C/ Viento3 Isabel C/ Luz4 Lourdes C/ Andalucía5 Julián Avda. Del Mar
U6 Sonia Avda. Del Sol, nº 9
alumnosnumexped nomalumno diralumno …
1 Juán C/ Agua2 María C/ Viento3 Isabel C/ Luz4 Lourdes C/ Andalucía5 Julián Avda. Del Mar
6 Sonia Avda. Del Sol, nº 9
Módulo: Gestión de Bases de DatosCiclo Formativo: Administración de Sistemas Informáticos y RedesUnidad 3: El Modelo de Base de Datos Relacional
Eva Tortosa Sánchez
Dpto. Informática y Comunicaciones
3.5.1 Operaciones de Algebra Relacional
5. DIFERENCIA ==> La diferencia entre dos tablas: R – S será una tabla que contendrá todas las filas de R que no estén en S.
R y S DEBEN CUMPLIR: ==> MISMO NÚMERO DE COLUMNAS (MISMO GRADO)
==> LAS COLUMNAS QUE OCUPEN LA MISMA POSICIÓN EN LAS DISTINTAS TABLAS, DEBEN CONTENER EL MISMO TIPO DE DATOS(MISMO DOMINIO)
Operación binaria ==> Opera con más de una relación.Operación básica ==> No podemos obtener el mismo resultado combinando otras.
➢ Esta operación tiene muchas aplicaciones, por ejemplo nos va a permitir eliminar filas filas de una tabla relacional, por ejemplo un alumno que se da de baja en nuestro centro.
Módulo: Gestión de Bases de DatosCiclo Formativo: Administración de Sistemas Informáticos y RedesUnidad 3: El Modelo de Base de Datos Relacional
Eva Tortosa Sánchez
Dpto. Informática y Comunicaciones
3.5.1 Operaciones de Algebra Relacional (diferencia)
EJEMPLO.- Nuestra alumna “Sonia” ha decidido darse de baja de nuestro centro.
EN ÁLGEBRA RELACIONAL
Primero ==> Debemos obtener la fila correspondiente
RAUX ←σ(1)(alumnos)
Donde:(1) nomalumno = 'Sonia'
Segundo ==> Le quitamos a alumnos la fila almacenada en RAUX
alumnos←alumnos – RAUXSi lo hacemos en un solo paso:
alumnos←alumnos – σ(1)(alumnos)
Donde:(1) nomalumno = 'Sonia'
numexped nomalumno diralumno …1 Juán C/ Agua2 María C/ Viento3 Isabel C/ Luz4 Lourdes C/ Andalucía5 Julián Avda. Del Mar
-6 Sonia Avda. Del Sol, nº 9
alumnosnumexped nomalumno diralumno …
1 Juán C/ Agua2 María C/ Viento3 Isabel C/ Luz4 Lourdes C/ Andalucía5 Julián Avda. Del Mar
6 Sonia Avda. Del Sol, nº 9
Módulo: Gestión de Bases de DatosCiclo Formativo: Administración de Sistemas Informáticos y RedesUnidad 3: El Modelo de Base de Datos Relacional
Eva Tortosa Sánchez
Dpto. Informática y Comunicaciones
3.5.1 Operaciones de Algebra Relacional Modificaciones = Union + Diferencia
En álgebra relacional no existe una operación de actualización o modificación, si no que una actualización implica:
1. Eliminar el registro, fila o tupla original
2. Insertar el regisro modificado
Módulo: Gestión de Bases de DatosCiclo Formativo: Administración de Sistemas Informáticos y RedesUnidad 3: El Modelo de Base de Datos Relacional
Eva Tortosa Sánchez
Dpto. Informática y Comunicaciones
3.5.1 Operaciones de Algebra Relacional Modificaciones = Union + Diferencia
EJEMPLO.- Hay un error en el nombre del alumno 1, ya que no se llama “Juan” sino “Juan Antonio”.
Primero ==> Debemos obtener la fila correspondiente al alumno 1
RAUX ←σ(1)(alumnos)
Donde:(1) numexped = 1
Segundo ==> Quitamos de alumnos la fila correspondiente a dicho alumno
alumnos←alumnos – RAUXTercero ==> Añadimos a alumnos el contenido de RAUX con el nombre modificado
alumnos←alumnos U (π(2)(RAUX), 'Juan Antonio',π
(3)(RAUX))
Donde:(2) numexpediente(3) diralumno, ...
Módulo: Gestión de Bases de DatosCiclo Formativo: Administración de Sistemas Informáticos y RedesUnidad 3: El Modelo de Base de Datos Relacional
Eva Tortosa Sánchez
Dpto. Informática y Comunicaciones
3.5.1 Operaciones de Algebra Relacional
CONTINUARÁ ...
Módulo: Gestión de Bases de DatosCiclo Formativo: Administración de Sistemas Informáticos y RedesUnidad 3: El Modelo de Base de Datos Relacional
Eva Tortosa Sánchez
Dpto. Informática y Comunicaciones
BIBLIOGRAFÍA