Вы находитесь на странице: 1из 99

Mdulo 2.

Conocimientos
Bsicos de Informtica
Tema 4. Bases de Datos.
Conceptos

Informtica

Tema 4. Bases de Datos. Conceptos

1 / 99

Objetivos
Conocer qu es y para qu sirve una base de datos (BD).
Conocer qu es un Sistema de Gestin de Bases de Datos
(SGBD).
Conocer los pasos para crear una BD.
Conocer el modelo de datos ms popular: el Modelo
Relacional.
Crear un esquema conceptual utilizando diagramas E/R.
Crear un esquema lgico de una BD de datos basados en
el Modelo Relacional y extraer las relaciones.

Informtica

Tema 4. Bases de Datos. Conceptos

2 / 99

ndice
1.
2.
3.
4.
5.

Introduccin.
Modelos de Datos: Modelo Relacional.
Diseo de una BD.
Diagramas E/R.
Paso a Tablas.

Informtica

Tema 4. Bases de Datos. Conceptos

3 / 99

Introduccin
Ejemplo: Sistema de ficheros de la Universidad.
DEPARTAMENTO
DOCENCIA

ASIGNATURAS

IMPARTE

PROFESORES

DEPARTAMENTO
DE NMINAS

PROFESORES

Informtica

SECRETARIA

ALUMNOS

MATRICULA

ASIGNATURAS

DEPARTAMENTO
DE PERSONAL

PROFESORES

Tema 4. Bases de Datos. Conceptos

4 / 99

Introduccin
DEPARTAMENTO DOCENCIA

SECRETARIA

Asignaturas

Asignaturas

Nombre

Creditos T

Creditos P

Curso

Cdigo

Nombre

Creditos T

Tipo

Cdigo

I. Aplicada

4.5

1.5

GAP

1540

Informtica Aplicada

Obligatoria

1540

Derecho I.

Derecho

1432

Derecho Internacional

Optativa

1432

Ingls

1.5

1.5

Derecho

1421

Ingls Internacional

Troncal

1421

Matricula

Profesores
Nombre

DNI

Direccin

Tlf

Despacho

CodigoA

DNIAlum

Nota

Carmen Mtez

22232323

C/Madrid 24, 2 B, 23001, Jan

953434343

035-A3

1540

87383839X

Aprobado

Carlos Porcel

32323233

C/Rivera del Duero, 32, 23222, Jan

60000000

035-A3

1432

87383839X

N.P.

1540

23434343L

Notable

Imparte

Alumnos

CodigoA

DNIProf

Creditos

1540

22232323

1.5

1432

32323233

1540

32323233

1.5

Informtica

Nombre

DNI

Direccin

C.P

Ciudad

Rafael Castro

87383839X

C/Madrid 24, 2 B

23001

Jan

Ana Snchez

23434343L

C/Gran Va, 2, B

23001

Jan

Tema 4. Bases de Datos. Conceptos

5 / 99

Introduccin
Problemas de los Sistemas de Archivos:
- Redundancia e inconsistencia: formatos
incompatibles e informacin duplicada.
- Separacin y aislamiento de los datos.
- Rigidez en las bsquedas.
- Dependencia de los datos.
- Anomalas en el acceso concurrente.
- Problemas de confidencialidad y seguridad.

Informtica

Tema 4. Bases de Datos. Conceptos

6 / 99

Introduccin
Los sistemas de bases de datos surgen a causa de los
problemas que plantean los sistemas de archivos.
Aplicaciones
Desde el punto de vista lgico
(usuarios):
-Almacenan todos los datos en un
solo lugar.
-Almacenan las definiciones de las
relaciones entre los datos.

Usuarios

SGBD: Sistemas de Gestin de BD

Desde el punto de vista fsico:


- Los datos se almacenan en uno o
varios discos y en uno o varios
ficheros.

Ficheros de Datos
Informtica

Acceso a datos:
- A travs del sistema de gestin
de bases de datos.
- Se realiza mediante sentencias
especficas.

Tema 4. Bases de Datos. Conceptos

7 / 99

Introduccin
Una Base de Datos es un conjunto de datos
almacenados entre los que existen relaciones lgicas.
Se disea para satisfacer los requerimientos de
informacin de una organizacin.
La base de datos almacena:
Los datos de la organizacin.
Carmen Martnez, Profesora Ayudante Doctor, Incorporacin 1/9/2005, Oficina 035-A3,

Una descripcin de dichos datos: metadatos (en el


diccionario de datos).
Nombre (Texto), Categora (Texto), FechaContrato (Fecha > 1/1/1950), Dependencia
Informtica

Tema 4. Bases de Datos. Conceptos

8 / 99

Introduccin
El Sistema de Gestin de Bases de Datos (SGBD) es
una aplicacin que:
Permite a los usuarios definir, crear y mantener una BD
mediante un lenguaje de definicin de datos.
Permite insertar, actualizar, eliminar y consultar datos
mediante un lenguaje de manipulacin de datos.
Proporciona acceso controlado a la BD mediante:

Informtica

Sistema de seguridad.
Sistema de Integridad.
Sistema de control de concurrencia.
Sistemas de control de recuperacin.
Diccionario de datos.
Tema 4. Bases de Datos. Conceptos

9 / 99

Introduccin
Papeles en el entorno de las bases de datos:
- Administrador:
- Hace el diseo fsico e implementa la BD.
- Controla la seguridad y concurrencia.
- Mantiene el sistema y las prestaciones.

- Diseadores:
- Hacen el diseo lgico de la BD.

- Programadores de Aplicaciones:
- Implementan los programas para los usuarios finales.

- Usuarios Finales:
- Clientes de la base de datos.
Informtica

Tema 4. Bases de Datos. Conceptos

10 / 99

Introduccin
Ventajas de los SGBD:
- Hay menos datos redundantes.
- Se pueden evitar problemas de consistencia de datos.
- Flexibilidad en las bsquedas.
- Se puede extraer informacin adicional.
- Se pueden compartir.
- Se dispone de un estndar.
- Se mejora la seguridad en el acceso a la informacin.
- Se facilita la concurrencia.
- Hay servicios de copia de seguridad y recuperacin.
Informtica

Tema 4. Bases de Datos. Conceptos

11 / 99

Introduccin
Desventajas de los SGBD:
- Hay SGBD muy complejos de usar.
- Algunos SGBD comerciales son muy caros.
- Suele ser necesario adquirir equipamiento adicional.

Informtica

Tema 4. Bases de Datos. Conceptos

12 / 99

Modelos de Datos: Modelo Relacional


Un modelo de datos est formado por:
1. Un conjunto de conceptos para definir la estructura
de la base de datos:
1. Datos.
2. Relaciones entre los datos.
3. Restricciones sobre datos y relaciones.

2. Un conjunto de operaciones para realizar consultas


y actualizaciones de datos.

Informtica

Tema 4. Bases de Datos. Conceptos

13 / 99

Modelos de Datos: Modelo Relacional


Dependiendo de los tipos de conceptos que ofrecen
para describir la estructura de la BD los modelos de
datos se clasifican en:
Conceptuales: usan conceptos de alto nivel muy cercanos al
usuario. Ej: Diagramas Entidad-Relacin(E/R).
Lgicos: usan conceptos que pueden ser entendidos por los
usuarios finales, pero estn cerca de cmo se almacenan
fsicamente en el ordenador. Ej: Modelo Relacional.
Fsicos: conceptos de bajo nivel que describen los detalles de
cmo se almacena la informacin en el ordenador. Suelen usarlos
el personal informtico.
Cada SGBD soporta un modelo lgico, siendo el ms comn el Modelo Relacional.
Informtica

Tema 4. Bases de Datos. Conceptos

14 / 99

Modelos de Datos: Modelo Relacional


El Modelo Relacional es un modelo de datos lgico,
basado en conceptos matemticos.
Relacin = tabla de datos.
CODIGO

TITULO

AO

DURACION

PRECIO

0001

El Fugitivo

1983

93

24

0002

Memento

1999

95

14

0003

Celda 211

2010

80

18

0004

El Fugitivo

1953

89

13

Informtica

Tema 4. Bases de Datos. Conceptos

15 / 99

Modelos de Datos: Modelo Relacional


PELICULAS

Nombre de la relacin

CODIGO

TITULO

AO

DURACION PRECIO

0001

El Fugitivo

1983

93

24

0002

Memento

1999

95

14

0003

Celda 211

2010

80

18

0004

El Fugitivo

1953

89

13

Atributos

Tuplas

A partir de ahora nos referiremos al esquema de esta relacin como un listado


de atributos encerrados entre parntesis:
PELICULAS (Cdigo, Ttulo, Ao, Duracin, Precio)

Informtica

Tema 4. Bases de Datos. Conceptos

16 / 99

Modelos de Datos: Modelo Relacional


Propiedades de las relaciones:
Cada relacin tiene un nombre distinto.
Los valores de los atributos son atmicos.
Nombre

Telefonos

Ciudad

Carmen
MTez

953213017,
953202020,
600000000

Jan

Carlos Porcel

953213017,
645343234

Jan

Informtica

Nombre

Tlf Trabajo

Tlf Casa

Tlf Mvil

Ciudad

Carmen
MTez

953213017

953202020

600000000

Jan

Carlos Porcel

953213017

645343234

Jan

Cada atributo tiene un nombre distinto en una relacin.


Los atributos no estn ordenados.
No hay tuplas duplicadas.
Las tuplas no estn ordenadas.
Tema 4. Bases de Datos. Conceptos

17 / 99

Modelos de Datos: Modelo Relacional


PELICULAS (Cdigo, Ttulo, Ao, Duracin, Precio)
Dominio: Conjunto de valores que puede tomar un
atributo.
CODIGO

TITULO

Un
Texto de
nmero de tamao
4 dgitos
100

Informtica

AO

DURACION

Ao: nmero con cuatro Un nmero


dgitos mayor que 1900 entero >50 y
<200

PRECIO
Un nmero
real > = 0

Tema 4. Bases de Datos. Conceptos

18 / 99

Modelos de Datos: Modelo Relacional


PELICULAS (Cdigo, Ttulo, Ao, Duracin, Precio)
Claves Candidatas: Atributo o atributos que
identifican de modo nico las tuplas de una relacin.
Caractersicas:
Irreducibilidad.
Unicidad.

Clave Primaria: Clave candidata que se escoge para


identificar las tuplas de una relacin de modo nico.
Todas las relaciones tienen una nica clave primaria
asociada.
Informtica

Tema 4. Bases de Datos. Conceptos

19 / 99

Modelos de Datos: Modelo Relacional


Podra ser clave candidata?

PELICULA

Informtica

CODIGO

TITULO

AO

DURACION PRECIO

0001

El Fugitivo

1983

93

24

0002

Memento

1999

95

14

0003

Celda 211

2010

80

18

0004

El Fugitivo

1953

89

13

Tema 4. Bases de Datos. Conceptos

20 / 99

Modelos de Datos: Modelo Relacional


Podra ser clave candidata?

PELICULA
CODIGO

TITULO

AO

DURACION PRECIO

0001

El Fugitivo

1983

93

24

0002

Memento

1999

95

14

0003

Celda 211

2010

80

18

0004

El Fugitivo

1953

89

13

NO porque se repite el nombre de la pelcula!

Informtica

Tema 4. Bases de Datos. Conceptos

21 / 99

Modelos de Datos: Modelo Relacional


Y juntando ambos atributos?

PELICULA

Informtica

CODIGO

TITULO

AO

DURACION PRECIO

0001

El Fugitivo

1983

93

24

0002

Memento

1999

95

14

0003

Celda 211

2010

80

18

0004

El Fugitivo

1953

89

13

Tema 4. Bases de Datos. Conceptos

22 / 99

Modelos de Datos: Modelo Relacional


Y juntando ambos atributos?

PELICULA
CODIGO

TITULO

AO

DURACION PRECIO

0001

El Fugitivo

1983

93

24

0002

Memento

1999

95

14

0003

Celda 211

2010

80

18

0004

El Fugitivo

1953

89

13

Perfecto!. En este caso s que no se repite ningn valor.

Informtica

Tema 4. Bases de Datos. Conceptos

23 / 99

Modelos de Datos: Modelo Relacional


Hay alguno ms?

PELICULA

Informtica

CODIGO

TITULO

AO

DURACION PRECIO

0001

El Fugitivo

1983

93

24

0002

Memento

1999

95

14

0003

Celda 211

2010

80

18

0004

El Fugitivo

1953

89

13

Tema 4. Bases de Datos. Conceptos

24 / 99

Modelos de Datos: Modelo Relacional


Hay alguno ms?

PELICULA
CODIGO

TITULO

AO

DURACION PRECIO

0001

El Fugitivo

1983

93

24

0002

Memento

1999

95

14

0003

Celda 211

2010

80

18

0004

El Fugitivo

1953

89

13

Claro!. !El cdigo tambin es nico para cualquier fila!

Informtica

Tema 4. Bases de Datos. Conceptos

25 / 99

Modelos de Datos: Modelo Relacional


Claves Candidatas:
Cdigo.
Nombre + Ao.

Clave Primaria: Cdigo.


(se suele seleccionar aquella que est compuesta por
menos atributos, o bien que sea numrica).

En el esquema final de la relacin se destaca la clave


primaria subrayndola:
PELICULAS (Cdigo, Ttulo, Ao, Duracin, Precio)
Informtica

Tema 4. Bases de Datos. Conceptos

26 / 99

Modelos de Datos: Modelo Relacional


Claves Externas o Ajenas:
PELICULAS (Cdigo, Ttulo, Ao, Duracin, Precio)
PRODUCTORA (Nombre, Pas, Tlf)
PRODUCTORA

PELICULA
CODIGO

TITULO

AO

DURACION

PRECIO

NOMBRE

PAIS

TLF

0001

El Fugitivo

1993

133

24

Warner Bros.

USA

+01618882822

0002

Memento

2000

95

14

Quin Martin
Prod.

USA

+01814321234

0003

Celda 211

2010

80

18

Espaa

912343234

0004

El Fugitivo

1963

89

13

Kandor
Graphics

Canal +

Espaa

858234343

Qu productora tiene cada pelcula?


Informtica

Tema 4. Bases de Datos. Conceptos

27 / 99

Modelos de Datos: Modelo Relacional


Claves Externas o Ajenas:
PELICULAS (Cdigo, Ttulo, Ao, Duracin, Precio, Produce)
PELICULA

PRODUCTORA (Nombre, Pas)

PRODUCTORA

CODIGO

TITULO

AO

DURACION

PRECIO

Produce

NOMBRE

PAIS

TLF

0001

El Fugitivo

1993

133

24

Warner Bros.

Warner Bros.

USA

+01618882822

0002

Memento

2000

95

14

USA

+01814321234

0003

Celda 211

2010

80

18

Canal +

Quin Martin
Prod.

0004

El Fugitivo

1963

89

13

Quin Martin
Prod.

Kandor
Graphics

Espaa

912343234

Canal +

Espaa

858234343

PELICULAS - Produce PRODUCTORA

Clave Ajena

En la tabla PELICULAS el atributo Produce toma los datos de la tabla PRODUCTORA.


Informtica

Tema 4. Bases de Datos. Conceptos

28 / 99

Modelo Relacional
Claves Externas o Ajenas:
PELICULAS -- Produce PRODUCTORA
Sus valores deben coincidir con los de la clave primaria de
otra relacin.
Es la nica forma de representar la relacin entre
diferentes tablas de datos.
Definicin: La clave externa es un atributo/s que se refiere a un
atributo/s de otra tabla. Los atributos de la tabla que
referencia deben ser la clave primaria en la tabla referenciada.
Informtica

Tema 4. Bases de Datos. Conceptos

29 / 99

Modelos de Datos: Modelo Relacional


Valores Nulos:
Son valores que pueden tomar los atributos.
Significa que no sabemos qu valor tiene este campo.
Forma parte del dominio del atributo.
PELICULA
CODIGO

TITULO

Un
Texto de
nmero de tamao
4 dgitos
100

Informtica

AO

DURACION

Ao: nmero con cuatro Un nmero


dgitos mayor que 1900 entero >50 y
<200
Admite Nulos

PRECIO
Un nmero
real > = 0
Admite Nulos

Tema 4. Bases de Datos. Conceptos

30 / 99

Modelos de Datos: Modelo Relacional


Ejemplo de la tabla con valores nulos:
PELICULA

Informtica

CODIGO

TITULO

AO

DURACION PRECIO

0001

El Fugitivo

1983

93

0002

Memento

1999

0003

Celda 211

2010

0004

El Fugitivo

1953

0005

Toy Story 3

2010

..

24
14

89

28

Tema 4. Bases de Datos. Conceptos

31 / 99

Modelos de Datos: Modelo Relacional


Reglas de Integridad: Restricciones que siempre se
deben cumplir en una base de datos.
Tipos principales:
De Entidades: Ninguno de los atributos que componen la
clave primaria puede ser nulo (slo se aplica a la clave
primaria, no a las candidatas).
Referencial: Si en una relacin hay una clave externa, sus
valores deben ser valores nulos o valores que existen en la
clave primaria a la que hace referencia.

Informtica

Tema 4. Bases de Datos. Conceptos

32 / 99

Modelos de Datos: Modelo Relacional


Estara bien que en Cdigo hubiese Nulos?
PELICULA
CODIGO

TITULO

AO

DURACION PRECIO

0001

El Fugitivo

1983

93

24

0002

Memento

1999

95

14

Celda 211

2010

80

18

El Fugitivo

1953

89

13

Toy Story 3

2010

..

0004

28

Incumple la regla de Integridad de Entidades!

Informtica

Tema 4. Bases de Datos. Conceptos

33 / 99

Modelos de Datos: Modelo Relacional


Estara bien que en el atributo produce haya Nulos?
PELICULA

PRODUCTORA

CODIGO

TITULO

AO

DURACIO
N

PRECI
O

Produce

0001

El Fugitivo

1993

133

24

Warner Bros.

0002

Memento

2000

95

14

0003

Celda 211

2010

80

18

Canal +

0004

El Fugitivo

1963

89

13

Quin Martin
Prod.

Nombre

Pais

Tlf

Warner Bros.

USA

+01618882822

Quin Martin
Prod.

USA

+01814321234

Kandor
Graphics

Espaa

912343234

Canal +

Espaa

858234343

S, si en el dominio del atributo produce se establece que admite Nulos.

Informtica

Tema 4. Bases de Datos. Conceptos

34 / 99

Modelos de Datos: Modelo Relacional


Estara bien que en el atributo produce est el

valor Paramount?
PELICULA

PRODUCTORA

CODIGO

TITULO

AO

DURACIO
N

PRECIO

Produce

0001

El Fugitivo

1993

133

24

Warner Bros.

0002

Memento

2000

95

14

Paramount

0003

Celda 211

2010

80

18

Canal +

0004

El Fugitivo

1963

89

13

Quin Martin
Prod.

Nombre

Pais

Tlf

Warner Bros.

USA

+01618882822

Quin Martin
Prod.

USA

+01814321234

Kandor
Graphics

Espaa

912343234

Canal +

Espaa

858234343

NO! El valor Paramount no se encuentra previamente definido en la tabla Productora.


Por tanto, incumple la regla de integridad referencial.
Informtica

Tema 4. Bases de Datos. Conceptos

35 / 99

Diseo Bases de Datos


Requerimientos de Datos
DISEO CONCEPTUAL

Esquema Conceptual
DISEO LGICO

Esquema Lgico

Descripcin de la
BD por parte del
personal de la
organizacin.

DISEO FISICO

Esquema Fsico
Informtica

Tema 4. Bases de Datos. Conceptos

36 / 99

Diseo Bases de Datos


Requerimientos de Datos
DISEO CONCEPTUAL
Esquema Conceptual
DISEO LGICO
Esquema Lgico

Construccin del esquema


de informacin que se usa
en la organizacin.

DISEO FISICO
Esquema Fsico
Informtica

Tema 4. Bases de Datos. Conceptos

37 / 99

Diseo Bases de Datos


Requerimientos de Datos
DISEO CONCEPTUAL
Esquema Conceptual
DISEO LGICO
Esquema Lgico
DISEO FISICO

Descripcin de alto nivel de


la estructura de una BD,
independientemente del
SGBD que se vaya a utilizar
para manipularla ( p. ej.
Diagramas E/R).

Esquema Fsico
Informtica

Tema 4. Bases de Datos. Conceptos

38 / 99

Diseo Bases de Datos


Requerimientos de Datos
DISEO CONCEPTUAL
Esquema Conceptual
DISEO LGICO
Esquema Lgico

Conversin del
esquema
conceptual en un
esquema lgico.

DISEO FISICO
Esquema Fsico
Informtica

Tema 4. Bases de Datos. Conceptos

39 / 99

Diseo Bases de Datos


Requerimientos de Datos
DISEO CONCEPTUAL
Esquema Conceptual
DISEO LGICO
Esquema Lgico
DISEO FISICO

Descripcin de la estructura
de una BD en trminos de
las estructuras de datos que
puede procesar un tipo de
SGBD (p.ej. Modelo
Relacional, orientado a
objetos, etc.).

Esquema Fsico
Informtica

Tema 4. Bases de Datos. Conceptos

40 / 99

Diseo Bases de Datos


Requerimientos de Datos
DISEO CONCEPTUAL
Esquema Conceptual
DISEO LGICO
Esquema Lgico
DISEO FISICO

Proceso de
creacin del
esquema fsico a
partir del
esquema lgico.

Esquema Fsico
Informtica

Tema 4. Bases de Datos. Conceptos

41 / 99

Diseo Bases de Datos


Requerimientos de Datos
DISEO CONCEPTUAL
Esquema Conceptual
DISEO LGICO
Esquema Lgico
DISEO FISICO

Descripcin de la
implementacin de la BD
en memoria secundaria,
para asegurar un acceso
eficiente a los datos .

Esquema Fsico
Informtica

Tema 4. Bases de Datos. Conceptos

42 / 99

Modelo Entidad Relacin


Es un Modelo Conceptual.
Est formado por un conjunto de conceptos que
permiten describir la realidad mediante un conjunto
de representaciones grficas y lingsticas.
Existe un modelo E/R extendido que permite ms
expresividad que el modelo E/R inicial.
Veremos los elementos bsicos del modelo E/R y algunos
del modelo E/R extendido.

Informtica

Tema 4. Bases de Datos. Conceptos

43 / 99

Modelo Entidad Relacin


Entidad:
Cualquier concepto sobre el que se recoge informacin:
cosa, persona, concepto abstracto, suceso.
Ejemplos: coche, casas, empleados, clientes, conciertos,
oficios, etc.

Persona

Informtica

Coche

Tema 4. Bases de Datos. Conceptos

44 / 99

Modelo Entidad Relacin


Relacin:
Correspondencia o asociacin entre dos o ms entidades.
Su nombre describe su funcin.
Ejemplos: trabaja, pertenece, tiene, desemboca, etc.

Persona

tiene

Coche

Significa: Las personas tienen coches y los coches los


poseen personas.
Informtica

Tema 4. Bases de Datos. Conceptos

45 / 99

Modelo Entidad Relacin


Relacin: Ejemplo de relacin ternaria.
Avin

Piloto

viaje

Tripulacin

Significa: Los viajes se hacen con aviones, pilotos y


miembros de la tripulacin.
Informtica

Tema 4. Bases de Datos. Conceptos

46 / 99

Modelo Entidad Relacin


Relacin: Ejemplo de relacin reflexiva.

Empleado

dirige

Significa: Los empleados son dirigidos por empleados.

Informtica

Tema 4. Bases de Datos. Conceptos

47 / 99

Modelo Entidad Relacin


Cardinalidad o Grado de una Relacin: Expresa el
nmero de entidades a las que otra entidad puede
estar asociada en una relacin.

tiene

Persona
1

Coche

Significa: Una persona puede tener 0 o muchos


coches, mientras que un coche pertenece a 1 nica
persona.
Informtica

Tema 4. Bases de Datos. Conceptos

48 / 99

Modelo Entidad Relacin


Relacin: Ejemplo de relacin ternaria.
Avin
N

Piloto

viaje

Tripulacin

Significa: Un Piloto en un Avin viaja con mucha tripulacin, un miembro


de la tripulacin en un avin puede viajar con varios pilotos, y un piloto con
un miembro de la tripulacin puede viajar en muchos aviones.

Informtica

Tema 4. Bases de Datos. Conceptos

49 / 99

Modelo Entidad Relacin


Relacin: Ejemplo de relacin reflexiva.

1
dirige

Empleado
N

Significa: un empleado es dirigido por 1 empleado,


y 1 empleado dirige a 0 o muchos empleados.

Informtica

Tema 4. Bases de Datos. Conceptos

50 / 99

Modelo Entidad Relacin


Tipos
Relaciones 1:1. A cada ocurrencia de una entidad le
corresponde una y slo una ocurrencia de la otra, y
viceversa.

Empleado

Informtica

tiene

Nmina

Tema 4. Bases de Datos. Conceptos

51 / 99

Modelo Entidad Relacin


Tipos
Relaciones 1:N. A cada ocurrencia de la primera entidad le
pueden corresponder varias ocurrencias de la segunda, y
a cada ocurrencia de la segunda le corresponde no ms de
una ocurrencia de la primera.

Departamento

Informtica

trabaja

Empleado

Tema 4. Bases de Datos. Conceptos

52 / 99

Modelo Entidad Relacin


Tipos
Relaciones N:N. A cada ocurrencia de la primera entidad le
pueden corresponder varias ocurrencias de la segunda, y
viceversa.

Profesor

Informtica

ensea

Alumno

Tema 4. Bases de Datos. Conceptos

53 / 99

Modelo Entidad Relacin


Atributo:
Caracterstica de inters o un hecho sobre una entidad o
sobre una relacin.
Si el atributo es clave primaria, se seala rellenando el
crculo, subrayando el nombre o con un doble crculo.

Informtica

Nombre

Clave primaria

Telfono

No es clave primaria

Cdigo

Clave primaria

Tema 4. Bases de Datos. Conceptos

54 / 99

Modelo Entidad Relacin


DNI
Nombre
Tlf
Email

Alumno
N

Convocatoria
Nota
Curso Acadmico

Matrcula

Asignaturas
Informtica

Cdigo
Nombre
Crditos

Tema 4. Bases de Datos. Conceptos

55 / 99

Modelo Entidad Relacin


Entidad Dbil:
Es una entidad cuya existencia depende de otra entidad.
Con sus atributos no tiene suficiente para formar clave
primaria.

Da
Hora
Tipo

Informtica

Movimientos

tiene

Cuenta
Corriente

Entidad
Dc
NumeroCuenta

Tema 4. Bases de Datos. Conceptos

56 / 99

Modelo Entidad Relacin


Entidad Dbil:
Es una entidad cuya existencia depende de otra entidad.
Su clave primaria no suele ser suficiente para identificar los
datos que representa.

Da
Hora
Tipo

Movimientos

tiene

Cuenta
Corriente

Entidad
Dc
NumeroCuenta

Crees que estos atributos son suficientes para ser clave primaria de MOVIMIENTOS?
Informtica

Tema 4. Bases de Datos. Conceptos

57 / 99

Modelo Entidad Relacin


Entidad Dbil:
Suele ser una Relacin 1:N o 1:1.
Se representa con un rectngulo doble y con una flecha
hacia la entidad fuerte de la que depende.
Da
Hora
Tipo

Movimientos

Cuenta
Corriente

Entidad
Dc
NumeroCuenta

La clave primaria de Movimientos dependera de Entidad+Dc+NumeroCuenta


puesto que un movimiento siempre depende de la cuenta con la que est
asociado.

Movimientos (Da, hora, Tipo, Entidad, Dc, NumeroCuenta)


Informtica

Tema 4. Bases de Datos. Conceptos

58 / 99

Modelo Entidad Relacin


Especializacin o estructuras ES-UN.
Un conjunto de entidades puede incluir subgrupos de
entidades que se diferencian de alguna forma de las otras
entidades del conjunto.
El proceso de designacin de subgrupos dentro de un
conjunto de entidades se denomina especializacin.
Los atributos de la entidad raz, tambin los tienen los de
las entidades especializadas.
Adems, cada entidad especializada puede tener sus
propios atributos.
La clave primaria est especificada en la entidad raz.

Informtica

Tema 4. Bases de Datos. Conceptos

59 / 99

Modelo Entidad Relacin


Especializacin o estructuras ES-UN.
Matrcula
Modelo
Marca
Color
Bastidor

Vehculos
ES UN

Coche

Gama NAirbags
Informtica

Bus

NPasajeros

Camin

Moto

Tara NEjes
Tema 4. Bases de Datos. Conceptos

60 / 99

Modelo Entidad Relacin


A tener en cuenta
Eliminar las relaciones redundantes.
N

posee

Animal

Zoo

Informtica

pertenece

alberga

Especie

Tema 4. Bases de Datos. Conceptos

61 / 99

Modelo Entidad Relacin


A tener en cuenta
Eliminar las relaciones redundantes.
N

posee

Animal

pertenece

SE PODRIA BORRAR ALGUNA RELACIN?


1

Zoo

Informtica

alberga

Especie

Tema 4. Bases de Datos. Conceptos

62 / 99

Modelo Entidad Relacin


A tener en cuenta
Eliminar las relaciones redundantes.
N

posee

Animal

pertenece

SE PODRIA BORRAR ALGUNA RELACIN?


1

Zoo

Informtica

alberga

Especie

Tema 4. Bases de Datos. Conceptos

63 / 99

Modelo Entidad Relacin


A tener en cuenta
.cada relacin tiene su propio significado
Ciudad

residencia

nacimiento
N

Empleado

Informtica

Tema 4. Bases de Datos. Conceptos

64 / 99

Modelo Entidad Relacin


Ejemplo 1:
De cada AMIGO sabemos el nombre y su telfono.
De cada BAR sabemos el nombre y la direccin.
De cada CERVEZA sabemos el nombre y la marca.
Los AMIGOS frecuentan uno o varios bares. Puede
que les guste ir a cada bar en momentos distintos del
da (maana, tarde o noche), o puede que les sea
indiferente.
Cada AMIGO ha probado una o varias cervezas y
sabe cunto le gustan: nada, normal o mucho.
Informtica

Tema 4. Bases de Datos. Conceptos

65 / 99

Modelo Entidad Relacin


Ejemplo 1:
Una misma CERVEZA puede gustar a varios AMIGOS y
puede servirse en varios BARES distintos.
De las CERVEZAS que tenemos, algunas no las ha
probado nadie.
Tambin puede ocurrir que haya CERVEZAS que no se
sirvan en ninguno de los BARES que nos interesan. Cada
BAR sirve una o varias cervezas.
Entre los BARES que nos interesan, puede que haya
algunos que no frecuenten nuestros amigos, y otros que
sean frecuentados por varios amigos.
Informtica

Tema 4. Bases de Datos. Conceptos

66 / 99

Modelo Entidad Relacin


Nombre Tlf

momento

cuanto

gusta

Amigo

frecuenta
N

N
1

Cerveza
Nombre Marca
Informtica

sirve

Bar
Nombre Direccin

Tema 4. Bases de Datos. Conceptos

67 / 99

Modelo Entidad Relacin


Ejemplo 2

Queremos llevar la informacin de los ambulatorios de Jan:


Los ambulatorios tienen un nombre, una direccin y un telfono.
En los ambulatorios hay personas: Mdicos y pacientes. Todos ellos
tienen DNI, nombre, direccin y telfono.
Los mdicos tienen adems especialidad y oficina.
Los pacientes tienen citas con los mdicos un da a una hora
determinada.
Un mdico trabaja slo en un ambulatorio mientras que en un
ambulatorio trabajan muchos mdicos.
Las citas de los pacientes son con un mdico un da y a una hora
concreta. Un mdico puede tener muchas citas con muchos
pacientes.

Informtica

Tema 4. Bases de Datos. Conceptos

68 / 99

Modelo Entidad Relacin


Especialidad Oficina

trabaja

da
hora
N

Mdico

Ambulatorio
Nombre Tlf Direccin

Informtica

cita

N
1

Personas

Paciente

DNI Nombre Tlf Direccin

Tema 4. Bases de Datos. Conceptos

69 / 99

Paso a Tablas (Modelo Relacional)


Un esquema conceptual a travs del diseo lgico es
transformado en un esquema lgico.
El modelo relacional proporciona un esquema lgico
que permite representar BD en diferentes SGBD.
La realizacin de este diseo lgico conlleva la
ejecucin de una serie de reglas.

Informtica

Tema 4. Bases de Datos. Conceptos

70 / 99

Paso a Tablas (Modelo Relacional)


Entidades: Todas las entidades se convierten en
tablas, con sus atributos y sus claves primarias.

Alumno

DNI
Nombre
Tlf
Email

ALUMNO (DNI, Nombre, Tlf, Email)

Informtica

Tema 4. Bases de Datos. Conceptos

71 / 99

Paso a Tablas (Modelo Relacional)


Entidades dbiles: Todas las entidades dbiles se
convierten en tablas, con sus atributos y sus claves
primarias.
Se aade a esta tabla otra clave primaria que se
corresponde a la clave primaria de la entidad fuerte de la
que depende.
Numero
Fecha
Compra

Ejemplar

Libro

ISBN
Ttulo

Edicin

LIBRO (ISBN, Ttulo, Edicin)

EJEMPLAR(Numero, FechaCompra, ISBN)


Informtica

Tema 4. Bases de Datos. Conceptos

72 / 99

Paso a Tablas (Modelo Relacional)


Relaciones: Todas las relaciones se convierten en tablas,
con sus atributos y sus claves primarias en caso de que las
tengan.
Se aaden como atributos de esta tabla las claves
primarias de las entidades que relacionan.
cuanto
Nombre
Marca

Cerveza

gusta

Amigo

Nombre
Tlf

Cerveza(Nombre, Marca)
Amigo ( Nombre, Tlf)

GUSTA (cuanto, NombreCerveza, NombreAmigo)


Informtica

Tema 4. Bases de Datos. Conceptos

73 / 99

Paso a Tablas (Modelo Relacional)


Relaciones: Todas las relaciones se convierten en tablas,
con sus atributos y sus claves primarias en caso de que los
tengan.
Se aaden como atributos de esta tabla las claves
primarias de las entidades que relacionan.
cuanto
Nombre
Marca

Nombre

Nlas claves primarias


N
Pero, cules
son
enAmigo
las relaciones?
Cerveza
gusta

Tlf

Cerveza(Nombre, Marca)
Amigo ( Nombre, Tlf)

GUSTA (cuanto, NombreCerveza, NombreAmigo)


Informtica

Tema 4. Bases de Datos. Conceptos

74 / 99

Paso a Tablas (Modelo Relacional)


Claves Primarias en las Relaciones:
Relaciones 1:1, la clave primaria ser una de las claves
primarias de las entidades que relaciona.
Relaciones 1:N, la clave primaria siempre ser la
correspondiente a la clave primaria de la entidad cuya
cardinalidad es la del N.
Relaciones N:N, la clave primaria siempre ser la
correspondiente a la clave primaria de la entidad cuya
cardinalidad es la del N, es decir, todas.

Informtica

Tema 4. Bases de Datos. Conceptos

75 / 99

Paso a Tablas (Modelo Relacional)


DNI
Nombre

Alumno

Tiene

Expediente

Cdigo
Descripcin

Alumno(DNI, Nombre)
Expediente( Cdigo, Descripcin)

TIENE(DNI, Codigo)
DNI
Nombre

Padre

Tiene

Hijo

DNI
Nombre

Padre(DNI, Nombre)
Hijo ( DNI, Nombre)

TIENE(DNIPadre, DNIHijo)
Informtica

Tema 4. Bases de Datos. Conceptos

76 / 99

Paso a Tablas (Modelo Relacional)


oficial
Nombre
Nhabitan.

Pas

habla

Idioma

Nombre
Alfabeto

Pas (Nombre, Nhabitan)


Idioma ( Nombre, Alfabeto)

HABLA (NombreP, NombreI, oficial)


1
Empleado (DNI, Nombre)
DNI
Nombre

Informtica

Empleado

dirige

Dirige(DNIEmpleado, DNIDirector)

Tema 4. Bases de Datos. Conceptos

77 / 99

Paso a Tablas (Modelo Relacional)


Especializacin: Existen 3 modos de realizarlo:
Opcin 1. Se crea una relacin por cada entidad. Cada
entidad hija tendra la clave primaria de la entidad raz.
DNI
Nombre
Telfono
Despacho
email

Profesores

PROFESORES (DNI,Nombre, Telfono,


Despacho, email)

ES UN

Funcionarios
NFuncionario Seguro
Informtica

Contratados
Duracin

FUNCIONARIOS (DNI, Nfuncionario,


Seguro)
CONTRATADOS (DNI, Duracin)
Tema 4. Bases de Datos. Conceptos

78 / 99

Paso a Tablas (Modelo Relacional)


Opcin 2. Slo se crea una relacin por cada entidad hijo.
Cada entidad hija tendr todos los atributos de la entidad
padre que desaparece.
DNI
Nombre
Telfono
Despacho
email

Profesores

FUNCIONARIOS (DNI, Nombre,


Telfono, Despacho, email,
Nfuncionario, Seguro)

ES UN

Funcionarios
NFuncionario Seguro
Informtica

Contratados

CONTRATADOS (DNI, Nombre,


Telfono, Despacho, email, Duracin)

Duracin
Tema 4. Bases de Datos. Conceptos

79 / 99

Paso a Tablas (Modelo Relacional)


Opcin 3. Slo se crea la relacin de la entidad padre. El
resto desaparece. Se aaden los atributos de las entidades
que desaparecen.
DNI
Nombre
Telfono
Despacho
email

Profesores

ES UN

Funcionarios
NFuncionario Seguro
Informtica

Contratados

PROFESORES (DNI,Nombre, Telefono,


Despacho, email, Nfuncionario,
Seguro, Duracin)

Duracin
Tema 4. Bases de Datos. Conceptos

80 / 99

Paso a Tablas (Modelo Relacional)


Consejos para decidir qu opcin escoger:
Si la entidad raz tiene un gran nmero de atributos, elegir
la opcin 1.
Si las entidades hijas no tienen ningn atributo y no
forman parte de ninguna relacin, elegir la opcin 3. En
este caso incluso se puede aadir un atributo que se llame
tipo en la relacin de la entidad raz.
En el resto de los casos conviene usar la opcin 2, a
excepcin de cuando la entidad raz forma parte de una
relacin, en cuyo caso elegir la opcin 1.

Informtica

Tema 4. Bases de Datos. Conceptos

81 / 99

Paso a Tablas (Modelo Relacional)


Reduccin de Tablas.
ltimo paso para la obtencin del esquema relacional.
Asegura que las tablas que se obtienen son las mnimas
necesarias.
Mejora la eficiencia del sistema.
La reduccin de tablas implica que la informacin de una
tabla eliminada debe ser incluida en otra tabla. NUNCA se
elimina una tabla directamente.

Informtica

Tema 4. Bases de Datos. Conceptos

82 / 99

Paso a Tablas (Modelo Relacional)


Reduccin de Tablas. Proceso:
1. nicamente son susceptibles de ser eliminadas aquellas
relaciones que provienen de relaciones 1:1 y 1:N.
2. Una tabla se podr eliminar siempre que se puedan
incluir los atributos de dicha relacin en otra tabla sin
alterar su sentido. Por ejemplo:

Hijo (DNI, Nombre)


Padre ( DNI, Nombre)
Tiene (DNIHijo, DNIPadre) 1:N
Informtica

Tema 4. Bases de Datos. Conceptos

83 / 99

Paso a Tablas (Modelo Relacional)


Reduccin de Tablas. Proceso:
1. nicamente son susceptibles de ser eliminadas aquellas
relaciones que provienen de relaciones 1:1 y 1:N
2. Una tabla se podr eliminar siempre que se puedan
incluir los atributos de dicha relacin en otra tabla sin
alterar su sentido. Por ejemplo:

Hijo (DNI, Nombre)


Padre ( DNI, Nombre)
Tiene (DNIHijo, DNIPadre) 1:N
Informtica

Se puede
transportar la
informacin de
esta tabla a otra
sin modificar su
sentido?

Tema 4. Bases de Datos. Conceptos

84 / 99

Paso a Tablas (Modelo Relacional)


Reduccin de Tablas. Proceso:
Hijo(DNI, Nombre)
Padre(DNI,
Nombre)
Padre ( DNI, Nombre)
Tiene (DNIHijo, DNIPadre) 1:N

La Clave primaria de
Tiene es el DNI del
hijo. Hay alguna
tabla en similares
circunstancias?

El atributo DNI de la tabla PADRE = El atributo DNIPadre de la tabla TIENE

Informtica

Tema 4. Bases de Datos. Conceptos

85 / 99

Paso a Tablas (Modelo Relacional)


Reduccin de Tablas. Proceso:
Hijo(DNI,
Nombre,
DNIPadre)
Padre(DNI,
Nombre)
Padre ( DNI, Nombre)
Tiene (DNIHijo, DNIPadre) 1:N

Informtica

Resultado:
Slo queda la
tabla Hijo con un
nuevo atributo y la
tabla Padre

Tema 4. Bases de Datos. Conceptos

86 / 99

Paso a Tablas (Modelo Relacional)


Reduccin de Tablas. Proceso:
La lista de tablas quedar:
Hijo(DNI, Nombre, DNIPadre)
Padre ( DNI, Nombre)

Informtica

Tema 4. Bases de Datos. Conceptos

87 / 99

Paso a Tablas (Modelo Relacional)


Relaciones o Claves Ajenas.
Una vez obtenidas las tablas de una BD, se pueden definir
las relaciones entre sus atributos.
Recordamos que las relaciones o claves ajenas son
aquellos atributos de una relacin cuyos datos proceden
de la clave primaria de otra relacin.

Hijo(DNI, Nombre, DNIPadre)


Padre ( DNI, Nombre)

Informtica

Tema 4. Bases de Datos. Conceptos

88 / 99

Paso a Tablas (Modelo Relacional)


Relaciones o Claves Ajenas.
Una vez obtenidas las tablas de una BD, se pueden definir
las relaciones entre sus atributos.
Recordamos que las relaciones o claves ajenas son
aquellos atributos de una relacin cuyos datos proceden
de la clave primaria de otra relacin.

Hijo(DNI, Nombre, DNIPadre)


Padre ( DNI, Nombre)

Informtica

Hay algn
atributo de
alguna tabla que
provenga de
otra?

Tema 4. Bases de Datos. Conceptos

89 / 99

Paso a Tablas (Modelo Relacional)


Lista de Tablas:

Hijo (DNI, Nombre, DNIPadre)


Padre ( DNI, Nombre)
Lista de Relaciones:

Hijo DNIPadre Padre

Informtica

SIGNIFICADO: En la tabla
Hijo hay un atributo
denominado DNIPadre que
proviene de la tabla Padre.

Tema 4. Bases de Datos. Conceptos

90 / 99

Paso a Tablas (Modelo Relacional)


Ejemplo 1
Ciudad

Nombre NHabitan

residencia
N

nacimiento
N

Empleado

Fecha

DNI Nombre Tlf


Informtica

Tema 4. Bases de Datos. Conceptos

91 / 99

Paso a Tablas (Modelo Relacional)


1. Transformar las Entidades:
Ciudad ( Nombre, NHabitan )
Empleado (DNI, Nombre, Tlf)

2. Transformar las Relaciones


Nacimiento (Fecha, Nombre, DNI) 1: N
Residencia (Nombre, DNI) N:N
Informtica

Tema 4. Bases de Datos. Conceptos

92 / 99

Paso a Tablas (Modelo Relacional)


Entidades:
Ciudad ( Nombre, NHabitan )
Empleado (DNI, Nombre, Tlf, Fecha, CiudadNacimiento)

3.

Hemos cambiado el
Reducir Tablas
Nombre por
CiudadNacimiento
porque en la tabla
Nacimiento (Fecha, Nombre, DNI) 1: N Empleado ya existe el
atributo Nombre.

Residencia (Nombre, DNI) N:N

Informtica

Tema 4. Bases de Datos. Conceptos

93 / 99

Paso a Tablas (Modelo Relacional)


Tablas Resultantes
Ciudad ( Nombre, NHabitan )
Empleado (DNI, Nombre, Tlf, Fecha, CiudadNacimiento)
Residencia (Nombre, DNI) N:N

4. Claves Ajenas
Empleado CiudadNacimiento Ciudad
Residencia Nombre Ciudad
Residencia DNI Empleado

Informtica

Tema 4. Bases de Datos. Conceptos

94 / 99

Paso a Tablas (Modelo Relacional)


Ejemplo 2.

Especialidad Oficina
N

trabaja

dia
hora
N

MEDICO

1
1
AMBULATORIO

Nombre Tlf Direccin

Informtica

1
PERSONAS

cita

N
1
PACIENTE

DNI Nombre Tlf Direccin

Tema 4. Bases de Datos. Conceptos

95 / 99

Paso a Tablas (Modelo Relacional)


Tablas:
AMBULATORIO ( Nombre, Tlf, Direccin )
MEDICO (DNI, Nombre, Tlf, Direccin, Especialidad,
Oficina)
PACIENTE (DNI, Nombre, Tlf, Direccin)

Relaciones
Trabaja (NombreAmbu, DNIMedico) 1: N
Cita (dia, hora, DNIMedico, DNIPaciente) N:N

Informtica

Tema 4. Bases de Datos. Conceptos

96 / 99

Paso a Tablas (Modelo Relacional)


Tablas:
AMBULATORIO ( Nombre, Tlf, Direccin )
MEDICO (DNI, Nombre, Tlf, Direccin, Especialidad,
Oficina, NombreAmbu)
PACIENTE (DNI, Nombre, Tlf, Direccin)

Relaciones
Trabaja (NombreAmbu, DNIMedico) 1: N
Cita (dia, hora, DNIMedico, DNIPaciente) N:N

Informtica

Tema 4. Bases de Datos. Conceptos

97 / 99

Paso a Tablas (Modelo Relacional)


Claves Ajenas:
MEDICO NombreAmbu AMBULATORIO
CITA DNIMedico MEDICO
CITA DNIPaciente PACIENTE

Informtica

Tema 4. Bases de Datos. Conceptos

98 / 99

Resumen
Qu son las Bases de Datos.
Qu es un SGBD y sus ventajas e inconvenientes.
Qu es un modelo de datos y en qu consiste el
modelo relacional.
Cmo se disea una Base de Datos.
Disear conceptualmente una BD usando Diagramas
E/R.
Obtener el esquema lgico de una BD y obtener sus
claves ajenas.
Informtica

Tema 4. Bases de Datos. Conceptos

99 / 99

Вам также может понравиться