Professional Documents
Culture Documents
Pedro Corcuera
Dpto. Matemtica Aplicada y
Ciencias de la Computacin
Universidad de Cantabria
corcuerp@unican.es
Objetivos
Bases de Datos 2
ndice
Modelos de datos
Fases de diseo
Modelo Entidad-Relacin
Bases de Datos 3
Modelo de datos - Definicin
Bases de Datos 4
Modelacin de datos
Bases de Datos 6
Fases de diseo
Bases de Datos 7
Fases de diseo
Implantacin en el gestor:
Diseo lgico: traduccin del modelo conceptual al LDD
del gestor correspondiente. Modelo relacional, OO, OR
Diseo fsico: determina la organizacin de archivos y las
estructuras de almacenamiento interno.
Bases de Datos 8
Modelo, Esquema y Ejemplar
Relacional
Ejemplar del esquema: instancia Objeto relacional
del esquema, esto es, datos que en Orientado a objetos
un momento determinado estn en
Jerrquico / red
el esquema
Bases de Datos 9
Modelos conceptuales
Caractersticas:
Independientes del SGBD
Mayor nivel de abstraccin
Mayor capacidad semntica
Ms enfocados al diseo de alto nivel
Interfaz usuario/informtico
Bases de Datos 10
Modelo Entidad Relacin (ER)
Bases de Datos 11
Diseo Conceptual
Entidad (entity)
Objeto que existe y se distingue de los dems
Se representa con una serie de atributos
Pueden ser concretos. pe.: un libro, una persona,..
O abstractas. pe.: prstamo, pedido,
Atributo (attribute)
Propiedades que caracterizan a las entidades.
Clave primaria: atributos que identifican a la entidad. pe.:
ISBN (PK), ttulo, idioma, para entidad libro
Bases de Datos 13
Elementos Entidad - Relacin
Dominio (domain)
Conjunto de valores permitidos para un atributo
P. ej: indicando el tipo de datos (por intencin)
P. ej: sexo-> M o F (por extensin)
Entity Extension
Conjunto de elementos del mismo tipo. Los conjuntos no
necesariamente deben ser disjuntos
Relacin (Relationship)
Conexin semntica entre dos o ms entidades
Relationship Instance
Conjunto de relaciones del mismo tipo
Bases de Datos 14
Entidades
Bases de Datos 15
Elementos grficos del modelo
Entidad - Relacin
Entidad Entidad
Dbil
Relacin de
Identificacin
Atributo
Atributo
Atributo Llave
Compuesto
Atributo
Derivado
Relacion
Enlace
Bases de Datos 16
Modelo ER
E1 R E2
Participacion Total de E2 en R
1 n
E1 R E2
(min, max)
R E
Bases de Datos 18
Atributos
ENTIDAD
nombre
ATRIBUTO dni sueldo
Empleados
RELACIN
inicio
nombre D_nomb
dni sueldo D_id presupuesto
Bases de Datos 20
Relaciones: Cardinalidad
Bases de Datos 21
Relaciones: Cardinalidad
Cardinalidad 1:N
Una instancia de la entidad A est asociada con 0 o ms
instancias de la entidad B
Una instancia de la entidad B est asociada con 0 o 1
instancia de la entidad A
Cardinalidad M:N
Una instancia de la entidad A est asociada con 0 o ms
instancias de la entidad B
Una instancia de la entidad B est asociada con 0 o ms
instancias de la entidad A
Bases de Datos 22
Relaciones adicionales
Participacin total
Se representa con doble lnea del lado de la entidad en la
que todas sus instancias deben estar asociadas con
alguna instancia de la otra entidad.
Bases de Datos 23
Restricciones Estructurales
Bases de Datos 24
Identificacin de instancias (key)
Primary Key:
llave seleccionada por el DBA como el principal medio
para identificar de manera nica las instancias de una
entidad
En el modelo ER se subraya el atributo que es la llave
primaria para esa entidad
Bases de Datos 26
Tipos de entidades: Strong/Weak
Bases de Datos 27
Weak Entity Example
EMPID DISC
BDATE
EMPLOYEE rel
DEPOF DEPENDENT
NAME
SEX
Bases de Datos 29
Anlisis diagrama ER
Empleado Proyecto
Trabaja exactamente en un dept. Controlado por exactamente 1
Puede o no administrar un solo departamento
departamento. Tiene al menos 1 empleado asignado
Trabaja en al menos 1 proyecto y (max N)
mximo en n proyectos Dependiente
Puede o no tener dependientes pero Depende de exactamente un empleado
mximo n dependientes
Puede o no ser supervisor y si
supervisa, supervisa a mximo n
empleados
Puede o no ser supervisado por un solo
supervisor.
Departamento
Tiene al menos 1 empleado (max N)
Tiene exactamente un administrador
Puede o no controlar proyectos (max N)
Bases de Datos 30
Ejemplo: Gestin de prstamos
Bases de Datos 32
Ejemplo: Gestin de prstamos
Bases de Datos 33
Ejemplo: Gestin docente
Cada profesor pertenece a un slo departamento y debe pertenecer
a uno
El profesor puede impartir varios grupos de la misma o distinta
asignatura, y un grupo debe ser enseado por un profesor
Los alumnos se matriculan de varias asignaturas (al menos una)
cada curso acadmico pero han de hacerlo en un grupo. A su vez un
grupo tendr varios alumnos matriculados. Cada grupo tendr
asignado un aula para cada da y hora de la semana.
La matrcula dar opcin a dos convocatorias de examen con su
respectiva calificacin.
Todo departamento debe tener un director, que es profesor
Los atributos de cada entidad son los que cabra esperar
Bases de Datos 34
Ejemplo: Gestin docente
Bases de Datos 35
Ejemplo: Gestin de compras
Una empresa est interesada en automatizar su proceso de
compras cuyo flujo de funcionamiento es:
Requiere registrar la hoja del pedido que realiza a un determinado
proveedor en una determinada fecha
En la hoja del pedido queda constancia del nmero de unidades que
compra de cada artculo y el precio de compra, y en caso de que el
proveedor o bien por volumen o por promocin, le realiza un
descuento, tambin lo anota
Los productos que compran tienen distinto IVA
Generalmente el paga a sus proveedores al mes de recibir la
mercanca y por transferencia, aunque lo puede hacer a plazos
Los atributos de cada entidad son los que cabra esperar
Bases de Datos 36
Ejemplo: Gestin de compras
Bases de Datos 37
Herramientas de diseo
SchoolId PK
CLASS
ClassId PK
COURSE
CourseId PK
GRADE
GradeId
ER/Studio
SchoolName FK1 SchoolId CourseName FK1 StudentId
Description ClassName FK1 SchoolId FK2 CourseId
Address Description Description Grade
Phone Comment
PostCode
STUDENT_COURSE STUDENT
MySQL Workbench
PK,FK1 StudentId PK StudentId
PK,FK2 CourseId
FK1 ClassId
StudentName
StudentNumber
TotalGrade
Address
Phone
EMail
TEACHER TEACHER_COURSE
PK TeacherId PK,FK1 TeacherId
PK,FK2 CourseId
FK1 SchoolId
TeacherName
Description
Bases de Datos 38
Bases de datos relacionales
Bases de Datos 41
Claves de una relacin
Bases de Datos 42
Claves de una relacin
Bases de Datos 43
Restricciones Inherentes del Modelo
Relacional
No existen tuplas repetidas (obligatoriedad de clave
primaria).
El orden de las tuplas y el de los atributos no es
relevante.
Cada atributo de cada tupla solo puede tomar un nico
valor sobre el dominio sobre el que est definido.
Ningn atributo que forme parte de la clave primaria de
una relacin puede tomar un valor nulo (regla de
integridad de entidad)
Bases de Datos 44
Restricciones Semnticas o de Usuario
Bases de Datos 46
Restricciones Semnticas o de Usuario
Bases de Datos 48
SQL(Structure Query Language)
Bases de Datos 49
SQL - Ejemplos
Bases de Datos 52