bases de datos relacionales
DESCRIPTION
Conceptos básicos del diseño de bases de datos relacionalesTRANSCRIPT
![Page 1: Bases De Datos Relacionales](https://reader033.vdocuments.site/reader033/viewer/2022051413/558e6e891a28ab174a8b45e4/html5/thumbnails/1.jpg)
UNIVERSIDAD DE VIGO
Departamento de Organización de Empresas y Marketing
Mª de los Ángeles Sandoval Pérez
![Page 2: Bases De Datos Relacionales](https://reader033.vdocuments.site/reader033/viewer/2022051413/558e6e891a28ab174a8b45e4/html5/thumbnails/2.jpg)
ESTRUCTURACIÓN DE LA MEMORIA DE LA ORGANIZACIÓN
► Redundancia de datosPresencia de datos repetidos en varios archivos
► Dependencia Programa-DatosRelación estrecha entre los datos almacenados en archivos y los programas específicos
que se requieren para actualizar y mantener esos archivos.
► Falta de flexibilidadIncapacidad de proporcionar informes ad hoc y de responder a necesidades de
información inesperadas de forma oportuna
► Carencia de seguridadLos límites para el acceso a la información suelen ser resultado de hábitos y tradiciones, o
de la mera dificultad para obtener la información
► Incapacidad de la aplicaciones para compartir datos y disponer de ellosPuesto que los elementos de información de diferentes archivos y diferentes partes de la
organización no pueden relacionarse entre sí, es prácticamente imposible compartir la información o acceder a ella de forma oportuna
Cada área funcional desarrolla sistemas aislados de los de otras áreas funcionales
![Page 3: Bases De Datos Relacionales](https://reader033.vdocuments.site/reader033/viewer/2022051413/558e6e891a28ab174a8b45e4/html5/thumbnails/3.jpg)
ESTRUCTURACIÓN DE LA MEMORIA DE LA ORGANIZACIÓN
► Redundancia y riesgo de incoherencia de los datos
Desperdicio de espacio de almacenamiento
Coste elevado de actualización
► Dificultad de realización de tratamientos Ad Hoc
Una nueva aplicación no puede explotar eficazmente los datos almacenados.
Un cambio de soporte o de método de acceso supone un coste de producción de software muy
elevado.
![Page 4: Bases De Datos Relacionales](https://reader033.vdocuments.site/reader033/viewer/2022051413/558e6e891a28ab174a8b45e4/html5/thumbnails/4.jpg)
ESTRUCTURACIÓN DE LA MEMORIA DE LA ORGANIZACIÓN
► Los datos se almacenan en un depósito común, independientemente de los programas que deben tratarlos
Integrada
Usuarios concurrentes o no
Compartida
BBDD
![Page 5: Bases De Datos Relacionales](https://reader033.vdocuments.site/reader033/viewer/2022051413/558e6e891a28ab174a8b45e4/html5/thumbnails/5.jpg)
ESTRUCTURACIÓN DE LA MEMORIA DE LA ORGANIZACIÓN
Conjunto de datos estructurados que son:
fiables,
Coherentes y
Compartidos por usuarios con necesidades de información diferentes
Más que una nueva técnica de almacenamiento y manipulación: un nuevo enfoque en el diseño y
utilización de sistemas de información
La BD constituye la imagen de la organización
La entrada de datos es única
![Page 6: Bases De Datos Relacionales](https://reader033.vdocuments.site/reader033/viewer/2022051413/558e6e891a28ab174a8b45e4/html5/thumbnails/6.jpg)
ESTRUCTURACIÓN DE LA MEMORIA DE LA ORGANIZACIÓN
Una sola base de datos sirve a múltiples aplicaciones
Posibilidad de tener en cuenta las relaciones de los distintos datos entre sí
Inexistencia de redundancia semántica
Compartición de los datos entre los programas de aplicación y las interrogaciones ad hoc
![Page 7: Bases De Datos Relacionales](https://reader033.vdocuments.site/reader033/viewer/2022051413/558e6e891a28ab174a8b45e4/html5/thumbnails/7.jpg)
ESTRUCTURACIÓN DE LA MEMORIA DE LA ORGANIZACIÓN
Exactitud y seguridad
Claridad y facilidad de uso
Reconstrucción rápida en caso de fallos en el sistema
Poderosos y “amigables” lenguajes
![Page 8: Bases De Datos Relacionales](https://reader033.vdocuments.site/reader033/viewer/2022051413/558e6e891a28ab174a8b45e4/html5/thumbnails/8.jpg)
ESTRUCTURACIÓN DE LA MEMORIA DE LA ORGANIZACIÓN
INDEPENDENCIA
Interrogación directa
Interfaz de tratamiento
Integridad
Confidencialidad
DISPONIBILIDAD
SEGURIDAD
Organización física
Organización lógica global
Caminos de acceso
![Page 9: Bases De Datos Relacionales](https://reader033.vdocuments.site/reader033/viewer/2022051413/558e6e891a28ab174a8b45e4/html5/thumbnails/9.jpg)
ESTRUCTURACIÓN DE LA MEMORIA DE LA ORGANIZACIÓN
Gestiona y controla los datos
Facilita la compartición de los datos
Protege los datos de accesos no autorizados
Ejecuta procedimientos para la integridad de los datos
Controla la concurrencia de usuarios
Proporciona utilidades para el mantenimiento de los datos
Software que permite a una organización centralizar sus datos, administrarlos de forma eficiente y proporcionar acceso a ellos por
medio de los programas de aplicación.
Actúa como interfase entre los programas de aplicación y los archivos de datos físicos
![Page 10: Bases De Datos Relacionales](https://reader033.vdocuments.site/reader033/viewer/2022051413/558e6e891a28ab174a8b45e4/html5/thumbnails/10.jpg)
ESTRUCTURACIÓN DE LA MEMORIA DE LA ORGANIZACIÓN
LENGUAJE DE DEFINICIÓN DE DATOS (LDD): Lenguaje formal que se usa para especificar el contenido y la estructura de la Base de Datos
LENGUAJE DE MANIPULACIÓN DE DATOS (LMD): Extraer datos de la Base para satisfacer
las solicitudes de información y crear aplicaciones
DICCIONARIO DE DATOS: Definiciones de los elementos de información y características de los datos, como forma de uso, representación
física, propiedad, autorización
![Page 11: Bases De Datos Relacionales](https://reader033.vdocuments.site/reader033/viewer/2022051413/558e6e891a28ab174a8b45e4/html5/thumbnails/11.jpg)
ESTRUCTURACIÓN DE LA MEMORIA DE LA ORGANIZACIÓN
Los datos se estructuran en base a un modelo (entidades relacionadas, propiedades y claves)
Las relaciones entre entidades constituyen una estructura de datos
El modelo de datos representa las estructuras de datos que son comunicadas al SGBD por medio de
un LDD
![Page 12: Bases De Datos Relacionales](https://reader033.vdocuments.site/reader033/viewer/2022051413/558e6e891a28ab174a8b45e4/html5/thumbnails/12.jpg)
ESTRUCTURACIÓN DE LA MEMORIA DE LA ORGANIZACIÓN
Entidades abstractas que representan los conceptos fundamentales del universo real y sus relaciones semánticas
Universo real
Base de ConocimientoEsquema conceptual
bruto
![Page 13: Bases De Datos Relacionales](https://reader033.vdocuments.site/reader033/viewer/2022051413/558e6e891a28ab174a8b45e4/html5/thumbnails/13.jpg)
ESTRUCTURACIÓN DE LA MEMORIA DE LA ORGANIZACIÓN
Universo real
Base de Conocimiento
Esquema conceptual
Esquema lógico global
Esquema interno
Esquemas externos
Aplicación de un Modelo Conceptual
Aplicación de un Modelo Lógico existente
![Page 14: Bases De Datos Relacionales](https://reader033.vdocuments.site/reader033/viewer/2022051413/558e6e891a28ab174a8b45e4/html5/thumbnails/14.jpg)
ESTRUCTURACIÓN DE LA MEMORIA DE LA ORGANIZACIÓN
Vista conceptual
Programa de aplicación
(Lenguaje A)
Vista interna
Programa de aplicación
(Lenguaje B)
Lenguaje de interrogación
Generador de Informes
Vista externa 1 Vista externa 2 Vista externa 3 Vista externa 4
![Page 15: Bases De Datos Relacionales](https://reader033.vdocuments.site/reader033/viewer/2022051413/558e6e891a28ab174a8b45e4/html5/thumbnails/15.jpg)
MODELOS LÓGICOS DE DATOS
Herramientas que sirven para describir y representar la interpretación del mundo real (nivel conceptual) y la estructura
lógica de acceso a a las informaciones
CONOCIMIENTO SUPERABUNDANTE
ACCESO Y COMPARTICIÓN DE LA INFORMACIÓN TEMA ESENCIAL Conjunto de datos del mismo tipo que representa una abstracción de una
parte de la empresa, al que se asigna un nombre. Es la mínima abstracción
que tiene significado para el usuario
Cualquier asociación entre objetos que traduce un hecho o una restricción
de la empresa
Conjunto de objetos relacionados funcionalmente (lazo N:1), que representa
la abstracción de una parte de la empresa y de la cual se puede identificar
cada ocurrencia
![Page 16: Bases De Datos Relacionales](https://reader033.vdocuments.site/reader033/viewer/2022051413/558e6e891a28ab174a8b45e4/html5/thumbnails/16.jpg)
MODELOS LÓGICOS DE DATOS: Modelo Relacional
Simplicidad de los conceptos de base
Potencia de los operadores de manipulación
Rigor de conceptos
Contribución a la coherencia del sistema de información global de
la empresa
2 INICIALES
Independencia de los tratamientos con respecto a la estructura interna de datos
Base sólida para tratar los problemas de redundancia e incoherencia de datos
1 SUPLEMENTARIO
Permitir el desarrollo de lenguajes de interrogación de fácil uso
1 FUTURO
Ser extensible para modelizar y manipular informaciones más elaboradas
![Page 17: Bases De Datos Relacionales](https://reader033.vdocuments.site/reader033/viewer/2022051413/558e6e891a28ab174a8b45e4/html5/thumbnails/17.jpg)
MODELOS LÓGICOS DE DATOS: Modelo Relacional
Teoría formal que constituye los cimientos de sistemas como DB2 e INGRES
Permite representar la información del mundo real de una manera intuitiva, por
medio de conceptos cotidianos y fáciles de entender.
Pero también incorpora mecanismos de consulta muy potentes, totalmente
independientes del SGBD e incluso de la organización física de los datos.
Las ideas del modelo relacional se aplican en los niveles conceptual
y externo, no en el nivel interno
![Page 18: Bases De Datos Relacionales](https://reader033.vdocuments.site/reader033/viewer/2022051413/558e6e891a28ab174a8b45e4/html5/thumbnails/18.jpg)
Estado coherente de la base
Álgebra relacional
Tablas de dos dimensiones
RELACIONES
MODELOS LÓGICOS DE DATOS: Modelo Relacional
Se ocupa de tres aspectos de los datos
Su estructura
Su integridad
Su manipulación
![Page 19: Bases De Datos Relacionales](https://reader033.vdocuments.site/reader033/viewer/2022051413/558e6e891a28ab174a8b45e4/html5/thumbnails/19.jpg)
MODELOS LÓGICOS DE DATOS: Modelo Relacional
COD NOMBRE EDAD CIUDAD124 Luis 23 León
241 Ana 16 Vigo
392 Pablo 27 Madrid
189 Eugenia 19 Madrid
820 Carla 37 León
763 Héctor 33 Santiago
Clave primaria
Atributos
Grado
Tuplas
Cardinalidad
![Page 20: Bases De Datos Relacionales](https://reader033.vdocuments.site/reader033/viewer/2022051413/558e6e891a28ab174a8b45e4/html5/thumbnails/20.jpg)
MODELOS LÓGICOS DE DATOS: Modelo Relacional
COD NOMBRE EDAD RESIDE OFICINA LUGAR OF
124 Luis 23 León O1 Vigo
241 Ana 16 Vigo O2 Madrid
392 Pablo 27 Madrid O1 Vigo
189 Eugenia 19 Madrid 03 Coruña
820 Carla 37 León O2 Madrid
763 Héctor 33 Santiago O2 Madrid
-- - - - - --- - - - - - - - --- - - - - -- - - -
-- - - - - - - --- - ---- - - - - - - - - --- - - - - - - - -
-- - -- - - -
Dominios
VigoMadrid
Santiago
CIUDAD
Describe oficinas
![Page 21: Bases De Datos Relacionales](https://reader033.vdocuments.site/reader033/viewer/2022051413/558e6e891a28ab174a8b45e4/html5/thumbnails/21.jpg)
MODELOS LÓGICOS DE DATOS: Modelo Relacional
TERMINOLOGÍA DE LA
ESTRUCTURA DE DATOS
Relación
Tupla
Cardinalidad
Atributo
Grado
Clave primaria
Dominio
Tabla
Fila o Registro
Número de filas
Columna o campo
Número de Columnas
Identificador único
Conjuntos de valores legales
![Page 22: Bases De Datos Relacionales](https://reader033.vdocuments.site/reader033/viewer/2022051413/558e6e891a28ab174a8b45e4/html5/thumbnails/22.jpg)
MODELOS LÓGICOS DE DATOS: Modelo Relacional
La denominación del modelo “Relacional” viene de la estrecha relación
que existe entre el elemento básico de este modelo y el concepto
matemático de relación. Una relación se define como el subconjunto
del producto cartesiano de n conjuntos, llamados dominios:
R D1 * D2 * D3 * ……. * Dn
n grado de R
R = { t1, t2, …… , tn}
m cardinalidad de R
tj = < dj1, dj2, ….. , djn >
dji € Di j € [1,m] i €[1,n]
R = { tj / P(dj1, dj2, … , djn)
es VERDADERO}
![Page 23: Bases De Datos Relacionales](https://reader033.vdocuments.site/reader033/viewer/2022051413/558e6e891a28ab174a8b45e4/html5/thumbnails/23.jpg)
MODELOS LÓGICOS DE DATOS: Modelo Relacional
Un dominio se define como el conjunto de valores admisibles
para un elemento de una relación.
Es un conector semántico inter-relación
Lista de valores Propiedad característica de
los valores del dominio
Un atributo se define como una propiedad característica de una
relación a la que se asigna un nombre
Cada atributo, definido sobre un dominio, representa el uso de ese
dominio en la relación
![Page 24: Bases De Datos Relacionales](https://reader033.vdocuments.site/reader033/viewer/2022051413/558e6e891a28ab174a8b45e4/html5/thumbnails/24.jpg)
MODELOS LÓGICOS DE DATOS: Modelo Relacional
Un atributo o conjunto de atributos jugará el papel
de identificador (Clave primaria) de la relación.
Un conjunto K de atributos que verifican la doble propiedad siguiente:
UNICIDAD: los valores de las claves primarias son únicos y nonulos.
MINIMALIDAD: ningún atributo componente de K puede serextraído sin pérdida de la propiedad de unicidad.
R (A1, A2, ………, An)
XeY (A1, A2, ………, An)
X es Clave Primaria si:
X Y, Y
Ningún subconjunto propio de X cumple la primera propiedad
DF
![Page 25: Bases De Datos Relacionales](https://reader033.vdocuments.site/reader033/viewer/2022051413/558e6e891a28ab174a8b45e4/html5/thumbnails/25.jpg)
MODELOS LÓGICOS DE DATOS: Modelo Relacional
La información contenida en una base de datos puede
verse sometida a limitaciones diferentes, impuestas por el
mundo real al que representa
El SGBD debe poder validar los datos de
entrada de acuerdo con dichas limitaciones
RE
GL
AS
DE
IN
TE
GR
IDA
D R
EL
AC
ION
AL
Todo atributo debe
satisfacer la restricción
según la cual los
valores deben provenir
del dominio pertinente
Ningún componente de
la clave primaria de una
Relación Base puede
aceptar Valores
REPETIDOS o NULOS
La base de datos no
debe contener valores de
clave extranjera sin
concordancia de los
valores de la clave
primaria correspondiente
INTEGRIDAD DE INTEGRIDAD DE INTEGRIDAD DE
DOMINIO ENTIDAD REFERENCIA
Un atributo de una relación R2 cuyos valores deben concordar con los de la clave primaria de alguna relación R! (donde R1 y R2
no son necesariamente distintas)
![Page 26: Bases De Datos Relacionales](https://reader033.vdocuments.site/reader033/viewer/2022051413/558e6e891a28ab174a8b45e4/html5/thumbnails/26.jpg)
MODELOS LÓGICOS DE DATOS: Modelo Relacional
PR
INC
IPIO
DE
INT
EG
RID
AD
DE
RE
FE
RE
NC
IA D
E D
AT
E La integridad de referencia se refiere a los valores tomados por un
atributo en una relación con respecto a los valores tomados por otro
atributo definido sobre el mismo dominio clave primaria e otra relación
Para cada clave extranjera es necesario responder a tres preguntas:
![Page 27: Bases De Datos Relacionales](https://reader033.vdocuments.site/reader033/viewer/2022051413/558e6e891a28ab174a8b45e4/html5/thumbnails/27.jpg)
MODELOS LÓGICOS DE DATOS: Modelo Relacional
¿Puede
aceptar
valores
nulos?
Eliminar el objetivo de
una referencia de clave
extranjera
Modificar la clave primaria del objetivo de una referencia
de clave extranjera
La respuesta depende de las políticas vigentes en el
mundo real representado por la base de datos
Existen por lo menos
tres posibilidades:
Restringida
(Restricted)
Se propaga
(Cascades)
Anula (Nullifies)
Propuesta de sintaxis para la
declaración de una clave
extranjera:
FOREIGN KEY REFERENCES
objetivo
NULLS [NOT] ALLOWED
DELETE OF objetivo efecto
UPDATE OF clave-primaria-
del-objetivo efecto
![Page 28: Bases De Datos Relacionales](https://reader033.vdocuments.site/reader033/viewer/2022051413/558e6e891a28ab174a8b45e4/html5/thumbnails/28.jpg)
Conjunto de relaciones semánticamente ligadas por sus dominios de definición:
R( A1:D1, A2:D2, ……….., An:Dn)
MODELOS LÓGICOS DE DATOS: Modelo Relacional
RELACIONES BASE (Reales):
Tablas base en SQL
RELACIONES VIRTUALES (Vistas):
Relaciones derivadas, representadas dentro del sistema mediante su definición en
términos de otras relaciones. No poseen datos propios, separables y distinguibles.
INSTANTÁNEAS
Relaciones derivadas, representadas no sólo por su definición, sino también por sus
propios datos almacenados que se renuevan de forma periódica
RELACIONES TEMPORALES:
Relaciones similares a las otras tres que se destruyen automáticamente en algún
momento apropiado
![Page 29: Bases De Datos Relacionales](https://reader033.vdocuments.site/reader033/viewer/2022051413/558e6e891a28ab174a8b45e4/html5/thumbnails/29.jpg)
MODELOS LÓGICOS DE DATOS: Modelo Relacional
Un ejemplo de definición de una base de datos, incluyendo
especificaciones de restricciones de varios tipos (1)
DEFINE BASE DE DATOS = MATRICULAS
TABLA = ALUMNOS
NUMERO_ALUMNO: ENTERO, NO NULO
NOMBRE_ALUMNO: CARÁCTER(25)
ESPECIALIDAD: CARÁCTER(15)
CURSO: CARÁCTER(2), NO NULO
EDAD: ENTERO
DEFINE INTEGRIDAD EN CURSO:
CURSO EN („PR‟, „SG‟, „TE‟, „CU‟, „QU‟)
DEFINE INTEGRIDAD EN NUMERO_ALUMNO:
(NÚMERO_ALUMNO > 0) Y (NÚMERO_ALUMNO < 10000)
FIN TABLA ALUMNOS
![Page 30: Bases De Datos Relacionales](https://reader033.vdocuments.site/reader033/viewer/2022051413/558e6e891a28ab174a8b45e4/html5/thumbnails/30.jpg)
MODELOS LÓGICOS DE DATOS: Modelo Relacional
Un ejemplo de definición de una base de datos, incluyendo
especificaciones de restricciones de varios tipos (2)
TABLA = ALUMNO_CLASE
NUM_CLASE: CARÁCTER(15), NO NULO
NUM_ALUMN: ENTERO, NO NULO
CALIF: ENTERO
DEFINE INTEGRIDAD DE REFERENCIA EN NUM_ALUMN:
NÚMERO_ALUMNO EN TABLA = ALUMNOS
FIN TABLA ALUMNO_CLASE
FIN DEFINICIÓN BASE DE DATOS
![Page 31: Bases De Datos Relacionales](https://reader033.vdocuments.site/reader033/viewer/2022051413/558e6e891a28ab174a8b45e4/html5/thumbnails/31.jpg)
MODELOS LÓGICOS DE DATOS: Modelo Relacional
Dos alternativas para establecer una base formal de la parte manipulativa
del modelo:
CÁLCULO RELACIONAL:
Ofrece una notación para formular la definición de una relación deseada
en términos de las relaciones de la base.
ÁLGEBRA RELACIONAL:
Ofrece un conjunto de operaciones explícitas que sirven para indicar al
sistema la forma de construir alguna relación deseada, a partir de las
relaciones de la BD.
NO PROCEDURAL
Conjunto de operadores
de alto nivel sobre las
relaciones
POTENTE
Una sola pregunta
permite extraer cualquier
información almacenada
CERRADO
Es posible escribir
expresiones relacionales
anidadas
![Page 32: Bases De Datos Relacionales](https://reader033.vdocuments.site/reader033/viewer/2022051413/558e6e891a28ab174a8b45e4/html5/thumbnails/32.jpg)
MODELOS LÓGICOS DE DATOS: Modelo Relacional
Se utiliza como patrón de referencia para medir la capacidad expresiva de un
determinado lenguaje relacional: un lenguaje es relacionalmente completo si sus
expresiones permiten la definición de cualquier relación que pueda definirse
mediante expresiones del álgebra
Conjunto de ocho operadores definidos por CODD:
UNIÓN, INTERSECCIÓN, DIFERENCIA , PRODUCTO CARTESIANO
SELECCIÓN, PROYECCIÓN, FUSIÓN Y DIVISIÓN
![Page 33: Bases De Datos Relacionales](https://reader033.vdocuments.site/reader033/viewer/2022051413/558e6e891a28ab174a8b45e4/html5/thumbnails/33.jpg)
MODELOS LÓGICOS DE DATOS: Modelo Relacional
El lenguaje estándar en SGBDs relacionales
Constituye un desarrollo del cálculo relacional, perotiene propiedades tomadas tanto del álgebra como delcálculo
Es más que un lenguaje de consulta, permite:
Definir la estructura de datos (LDD).
Modificar los datos de la base (LMD).
Especificar restricciones de seguridad (LCD).
Puede intercalarse en los lenguajes procedurales.
![Page 34: Bases De Datos Relacionales](https://reader033.vdocuments.site/reader033/viewer/2022051413/558e6e891a28ab174a8b45e4/html5/thumbnails/34.jpg)
MODELOS LÓGICOS DE DATOS: Modelo Relacional
INSERT (nuevos datos)
DELETE (datos existentes)
UPDATE (datos existentes)
RETRIEVE (datos almacenados)
Generalmenteejecutadas porun programade aplicación
FUNCIONES
PRINCIPALES
Los usuarios utilizan el LMD para efectuar sus operaciones sobre la base de datos.
Básicamente: inserción, eliminación, modificación y consulta de datos. También se pueden
crear vistas de los datos que faciliten otros accesos.
Los usuarios finales interaccionan con el S.G.B.D. a través de este lenguaje, mediante una
interfaz agradable y fácil de usar.
Los programadores de aplicaciones emplean el LMD dentro de un lenguaje de programación
(lenguaje anfitrión). Ambos lenguajes deben poder comunicarse adecuadamente para que las
aplicaciones resultantes sean simples de programar y de utilizar.
![Page 35: Bases De Datos Relacionales](https://reader033.vdocuments.site/reader033/viewer/2022051413/558e6e891a28ab174a8b45e4/html5/thumbnails/35.jpg)
MODELOS LÓGICOS DE DATOS: Modelo Relacional
PROFESORES
NOM-P CLASEJaime 2
Alberto 3
Inglés
Estructurado
Lenguaje
Gráfico
Álgebra
Relacional
GRUPOS
NOM-E NOM-PLuís JaimePablo JaimeJuan AlbertoCarlos Alberto
SELECT NOM-E, NOM-P FROM ESTUDIANTES. PROFESORES WHERE
PROFESORES.CLASE =ESTUDIANTES.CLASE
NOM-E CLASE
NOM-P CLASE
ESTUDIANTES
PROFESORES
?
?
=
ESTUDIANTES
NOM-E CLASELuís 2Pablo 2Juan 3Carlos 3
![Page 36: Bases De Datos Relacionales](https://reader033.vdocuments.site/reader033/viewer/2022051413/558e6e891a28ab174a8b45e4/html5/thumbnails/36.jpg)
MODELOS LÓGICOS DE DATOS: Modelo Relacional
OP
ER
AD
OR
ES
TR
AD
IC
IO
NA
LE
S
DE
C
ON
JU
NT
OS
UNIÓN
INTERSECCIÓN
DIFERENCIA
PRODUCTO CARTESIANO
Entre dos relaciones
compatibles en cuanto a
unión (unicompatibles)
OP
ER
AD
OR
ES
RE
LA
CIO
NA
LE
S
ES
PE
CIA
LE
S
SELECCIÓN
PROYECCIÓN
FUSIÓN
(REUNIÓN O JOIN)
DIVISIÓN
El álgebra relacional incluye los operadores tradicionales de conjuntos aunque con ligeras
modificaciones debido al hecho de tener relaciones
como operandos y no conjuntos arbitrarios. ( Las
relaciones no pueden tener una mezcla de diferentes tipos de
tuplas
Operadores unitarios de restricción
Operadores binarios de extensión
![Page 37: Bases De Datos Relacionales](https://reader033.vdocuments.site/reader033/viewer/2022051413/558e6e891a28ab174a8b45e4/html5/thumbnails/37.jpg)
MODELOS LÓGICOS DE DATOS: Modelo Relacional
UNIÓN: La unión de dos relaciones (unicompatibles) R1 y R2 es el conjunto de
tuplas que pertenecen a R1, a R2 o a las dos a la vez. La unión permite traducir el
“O” lógico.
INTERSECCIÓN: La intersección de dos relaciones (unicompatibles) R1 y R2
es el conjunto de tuplas que pertenecen tanto a R1 como a R2. La intersección
permite traducir el “Y” lógico.
DIFERENCIA: La diferencia de dos relaciones (unicompatibles) R1 y R2 es el
conjunto de tuplas que pertenecen a R1 pero no a R2. Es el operador
complementario de la intersección. La diferencia permite traducir la negación
lógica.
PRODUCTO CARTESIANO: El producto cartesiano (forma ampliada de la
operación matemática) de dos relaciones R1 y R2 es el conjunto de tuplas
obtenidas por concatenación de las tuplas de R1 y R2.
![Page 38: Bases De Datos Relacionales](https://reader033.vdocuments.site/reader033/viewer/2022051413/558e6e891a28ab174a8b45e4/html5/thumbnails/38.jpg)
MODELOS LÓGICOS DE DATOS: Modelo Relacional
SELECCIÓN: Produce un subconjunto horizontal de una relación dada. El
subconjunto de tuplas para las cuales se satisface una condición especificada.
Ej.: A WHERE X < operador de comparación > Y
PROYECCIÓN: Produce un subconjunto vertical de una relación dada. El
subconjunto obtenido mediante la selección de los atributos especificados y la
eliminación de las tuplas repetidas dentro de los atributos seleccionados.
Ej.: A [X, Y, Z]
FUSIÓN: se establece entre dos relaciones A y B. Construye una relación que
contiene todas las posibles combinaciones de tuplas, una de cada una de las dos
relaciones, tales que las dos tuplas participantes en una combinación dada satisfagan
alguna condición especificada.
DIVISIÓN: Se establece entre dos relaciones (una binaria y otra unitaria). Construye
una relación formada por todos los valores de un atributo de la relación binaria que
concuerdan (en el otro atributo) con todos los valores de la relación unitaria.
![Page 39: Bases De Datos Relacionales](https://reader033.vdocuments.site/reader033/viewer/2022051413/558e6e891a28ab174a8b45e4/html5/thumbnails/39.jpg)
MODELOS LÓGICOS DE DATOS: Modelo Relacional
MODULO PROFESORNUM. DE
SAMANAS
1 JUAN 10
1a LUÍS 10
1b LUÍS 10
2 PAULA 10
2a LUCÍA 10
2b ADRIAN 10
2c INES 10
3 PABLO 10
3a MIGUEL 10
4 ELENA 20
ALUMNO MODULO
ROMERO 1
ROMERO 1b
ROMERO 2
ROMERO 2a
ROMERO 3
ROMERO 3a
ROMERO 4
DÍAZ 1
DÍAZ 1a
DÍAZ 2
DÍAZ 2b
DÍAZ 3
DÍAZ 3a
DÍAZ 4
LLANOS 1
LLANOS 1a
LLANOS 2
LLANOS 2c
SOTO 3
SOTO 3a
SOTO 4
MODULO PROFESORNUM. DE
SAMANASALUMNO
1 JUAN 10 ROMERO
1 JUAN 10 DÍAZ
1 JUAN 10 LLANOS
1a LUÍS 10 DÍAZ
1a LUÍS 10 LLANOS
1b LUIS 10 ROMERO
2 PAULA 10 ROMERO
2 PAULA 10 DÍAZ
El resultado de una operación de fusión de dos tablas es una nueva tabla en la que
cada fila se forma mediante la concatenación de dos filas que tienen un
mismo valor en un dominio común:
JOIN MODULOS AND INSCRIPCIONES WHERE
MODULOS.MODULO = INSCRIPCIONES.MODULO
![Page 40: Bases De Datos Relacionales](https://reader033.vdocuments.site/reader033/viewer/2022051413/558e6e891a28ab174a8b45e4/html5/thumbnails/40.jpg)
MODELOS LÓGICOS DE DATOS: Modelo Relacional
COD-CON NOM DIR
100 JUAN VIGO
110 LUÍS SANTIAGO
120 JAVIER CORUÑA
REC COD-CON CAMIÓN C-SAL C-LLEG KM
100 100 50 VIGO ORENSE 105
200 100 50 ORENSE VIGO 105
150 110 10 SANTIAGO VIGO 92
300 120 20 CORUÑA ORENSE 175
REC COD-CON CAMIÓN C-SAL C-LLEG KM COD-CON NOM DIR
200 100 50 ORENSE VIGO 105 100 JUAN VIGO
150 110 10 SANTIAGO VIGO 92 110 LUÍS SANTIAGO
La equi-fusión entre
CONDUCTOR Y RECORRIDO
sobre los atributos DIR de
CONDUCTOR y C-LLEG de
RECORRIDO, definidos
ambos sobre el dominio
CIUDAD, genera la relación
temporal RT1, cuya
extensión es:
![Page 41: Bases De Datos Relacionales](https://reader033.vdocuments.site/reader033/viewer/2022051413/558e6e891a28ab174a8b45e4/html5/thumbnails/41.jpg)
Número de un piloto PL#Nombre de un piloto PLNOMDirección de un piloto DIRFecha de nacimiento de un piloto F-NACSalario de n piloto SAL
Número de un avión AV#Tipo de un avión TIPO-AVCapacidad de un avión CAPLocalización de un avión LOC
Número de un vuelo VL#Ciudad de salida de un vuelo CSCiudad de llegada de un vuelo CLLHora de salida de un vuelo HSHora de llegada de un vuelo HLLFecha de un vuelo F-VL
MODELOS LÓGICOS DE DATOS: Modelo Relacional
La primera etapa de la creación
de una Base de Datos Relacional
es la fase de diseño, que permite
modelizar el universo real, en el
ejemplo que sigue, una
compañía aérea
Esta es la etapa más larga, más
importante y la más compleja (el
80% de los errores en los
sistemas de información tiene su
origen en la fase de diseño)
Para obtener el ESQUEMA
CONCEPTUAL comenzamos por
identificar los “objetos”
(unidades elementales de
información) del universo real,
agrupándolos en “entidades”:
![Page 42: Bases De Datos Relacionales](https://reader033.vdocuments.site/reader033/viewer/2022051413/558e6e891a28ab174a8b45e4/html5/thumbnails/42.jpg)
MODELOS LÓGICOS DE DATOS: Modelo Relacional
Durante la
descripción
conceptual de
una base de
datos, los
objetos se
agrupan para
formar
entidades que
caracterizan a la
empresa. En
este caso
PILOTO, AVIÓN
y VUELO.
PL#
PLNOM
F-NAC
DIR
SAL
AV#
TIPO-AV LOC CAP
VL#
CS
HS
CLL
HLL
F-VLLazo N:1
Lazo 1:N
Lazo N:M
![Page 43: Bases De Datos Relacionales](https://reader033.vdocuments.site/reader033/viewer/2022051413/558e6e891a28ab174a8b45e4/html5/thumbnails/43.jpg)
MODELOS LÓGICOS DE DATOS: Modelo Relacional
De una manera intuitiva se puede considerar que una relación corresponde a una entidad del
esquema conceptual y que un atributo corresponde a un objeto.
De una manera formal, una relación se forma con la clave primaria de una entidad y todos los
objetos que dependen funcionalmente (lazo N:1) de dicha clave.
A partir del esquema conceptual obtenemos las relaciones esquematizadas a continuación.
Los atributos clave primaria aparecen subrayados.
PL# F-NACDIR SALPLNOM
AV# TIPO-AV LOCCAP
VL# CSHS CLLHLLF-VLAVIONPILOTO
![Page 44: Bases De Datos Relacionales](https://reader033.vdocuments.site/reader033/viewer/2022051413/558e6e891a28ab174a8b45e4/html5/thumbnails/44.jpg)
MODELOS LÓGICOS DE DATOS: Modelo Relacional
LISTA DE ATRIBUTOS CON SU DOMINIO DE DEFINICIÓN
PL# COD-PL :ENTERO [1…..200]
PLNOM NOM-PERS :CARÁCTER (20)
DIR CIUDAD :LISTA {Vigo, Madrid, Sevilla, Bilbao}
F-NAC FECHAS :FECHA
SAL U-MONET :ENTERO [500…..5000]
AV# COD-AV :ENTERO [50…...100]
TIPO-AV TIPOS :LISTA {DC-9, DC-10, A310, A320….}
CAP CAP :ENTERO [50….450]
LOC CIUDAD
VL# COD-VL :ENTERO [1….500]
PILOTO COD-PL
AVIÓN COD-AV
CS CIUDAD
HS HORAS :REAL [0.00….23.59]
HLL HORAS
F-VL FECHAS
Los valores de un atributo se caracterizan por un tipo o formato
sintáctico que puede ser, por ejemplo: entero, real, cadena de
caracteres, fecha ,…..
Todos los atributos comparablessemánticamente deben ser definidos
sobre el mismo dominio. De igual modo, cada vez que la comparación
de dos atributos sea imposible, dichos atributos deben definirse
sobre dominios diferentes.
Por ejemplo, los atributos PLNOM y TIPO-AV, aunque tienen el mismo formato sintáctico, no deben ser
definidos sobre el mismo dominio puesto que no son semánticamente
comparables.