bases de datos relacionales

44
UNIVERSIDAD DE VIGO Departamento de Organización de Empresas y Marketing Mª de los Ángeles Sandoval Pérez

Upload: angeles-sandoval

Post on 27-Jun-2015

92.127 views

Category:

Business


2 download

DESCRIPTION

Conceptos básicos del diseño de bases de datos relacionales

TRANSCRIPT

Page 1: Bases De Datos Relacionales

UNIVERSIDAD DE VIGO

Departamento de Organización de Empresas y Marketing

Mª de los Ángeles Sandoval Pérez

Page 2: Bases De Datos Relacionales

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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.