Title: Dise
1Diseño de Bases de Datos
- Diseño de Sistemas de Información
2Modelo Relacional
3Modelo Relacional
- Una Base de Datos Relacional es una base de datos
en donde todos los datos visibles al usuario
están organizados estrictamente como tablas de
valores (relaciones) y en donde todas las
operaciones de la base de datos operan sobre
estas tablas (Dr. Codd 1970).
4Propiedades de las Relaciones
- No existen tuplas duplicadas.
- Las tuplas están en desorden, de arriba hacia
abajo. - Los atributos están en desorden, de izquierda a
derecha. - Cada tupla contiene exactamente un valor para
cada atributo.
5Estructura Modelo Relacional
- Relación Tabla
- Tupla Fila o registro
- Cardinalidad Número de tuplas
- Atributo Columna o campo
- Grado Número de atributos
- Dominio Conjunto de valores válidos
- Clave primaria Identificador Único
6Manipulación Modelo Relacional
- Operaciones basadas en la teoría de conjuntos
- Unión
- Intersección
- Producto cartesiano
- Operaciones propias de un sistema relacional
- Restricción
- Proyección
- Junta natural
7El Modelo Entidad Relación (MER)
- "Modelo de datos basado en una percepción del
mundo real que consiste en un conjunto de objetos
básicos llamados entidades y relaciones entre
estos objetos".
8Componentes MER
- Entidad
- Objeto que tiene vida propia en el sistema que se
esta modelando. Ej Cliente, producto,
estudiante, vacación. - Relación
- Asociación o vinculación entre dos o más
entidades. Ej La relación comprar entre las
entidades cliente y producto. - Atributos
- Propiedades o características asociadas a una
entidad. Ej nombre, cédula, teléfono.
9Diagrama MER
-
- Otra forma de representar las entidades
-
10Integridad Modelo Relacional
- Claves (Llaves)
- Identifican una entidad dentro de un conjunto de
entidades. - Clave candidata
- Que puede ser clave primaria.
- Clave (llave) primaria
- Atributo o conjunto de atributos que permiten
identificar en forma única una tupla en la tabla. - Llave foránea (alterna)
- Atributo que es llave primaria en otra entidad
con la cual se relaciona. Las llaves foráneas son
en últimas las que permiten relacionar las tablas
en las bases de datos. -
11Relaciones o asociaciones
- Grado de una relación.
- El número del conjunto de entidades que
participan en la asociación. - Unaria
- Participa un único conjunto de entidades.
- Binaria
- Participan dos (2) conjuntos de entidades.
- N-aria
- N-aria Participan más de dos conjuntos de
entidades.
12Grado de una Relación (Ejemplos)
13Relaciones o asociaciones
- Cardinalidad de una relación.
- Indica el número de entidades de un conjunto (E1)
que se relacionan con una entidad de otro
conjunto (E2) y viceversa.
14Relaciones o asociaciones
- Uno a uno (11)
- Una entidad del conjunto de entidades E1 se
relaciona con una única entidad del conjunto de
entidades E2 y viceversa. - Uno a muchos (1n)
- Una entidad del conjunto de entidades E1 se
relaciona con muchas entidades del conjunto de
entidades E2 y una entidad del conjunto de
entidades E2 solo puede estar relacionada con una
entidad del conjunto de entidades E1. - Muchos a muchos (nn)
- Una entidad del conjunto de entidades E1 esta
relacionada con muchas entidades del conjunto de
entidades E2 y viceversa.
15Relaciones o asociaciones
- Uno a uno (11)
- Uno a muchos (1n)
- Muchos a muchos (nn)
16Relaciones o asociaciones
- Uno a uno (11)
- Uno a muchos (1n)
- Muchos a muchos (nn)
17Relaciones o asociaciones (Mapeo)
- Entidades débiles
- Cuando en el MER aparece una relación muchos a
muchos, esto da pie a la generación de una
entidad débil que contiene como componentes de
su clave primaria, las claves de las entidades
fuertes que la generan.
matricula
1,n
1,n
Estudiante
Materia
ve
18Ejemplo
- Se tiene una empresa desarrollando varios
proyectos, a los que son asignados varios
empleados, pero cada empleado solo esta vinculado
a un proyecto, en un momento dado. Cada proyecto
consume diferentes recursos en cantidades
determinadas los empleados están a cargo de un
supervisor, que es un empleado también. Los
empleados pueden tener personas beneficiarias
(hijos, esposas, padres, etc.).
19Ejemplo (MER)
20Paso del MER al Modelo Relacional
21Diccionario de datos de la BD
- Evita tener que especificar los atributos en el
MER, lo cual aligera el modelo. - Facilita la posterior implementación de la BD en
un motor específico. - Da una idea muy precisa de la información que se
va a almacenar. - Integra tanto los tipos del dominio como las
restricciones en la BD.
22Diccionario de datos (Ejemplo)
Empleado
Campo Tipo Long Descripción Llave Validación
CodigoE Número 10 Código del empleado PK
CedulaE Número 10 Número de cédula del empleado
Nombre Cadena 30 Nombre del empleado
Dirección Cadena 50 Dirección de residencia
Teléfono Número 15 Número telefónico de contacto
Título Cadena 30 Título de la profesión
Instit Cadena 30 Institución de egreso
Año Fecha Año de egreso Formato DD/MM/AAAA
Tipo Cadena 1 Tipo de empleado dentro de la empresa P Planta T Temporal C Por contrato
CodigoSU Cadena 10 Código del empleado supervisor FK
23Ejercicio
- Realice una Base de Datos para llevar el registro
de uno o varios torneos de fútbol. En dicho
sistema será posible almacenar la información
acerca de los equipos, sus jugadores y su
rendimiento, así como las estadísticas generales
del torneo (goleador, tabla de posiciones, entre
otras). - Alguna información que se podrá consultar en el
sistema puede ser - Equipos que juegan un torneo
- Torneos en que compite un equipo
- Goleadores de un equipo o torneo
- Tabla de posiciones
- Seguimiento del comportamiento de un jugador
- Partidos en una fecha
- Marcadores de los partidos
- Estadísticas de un equipo (Goles, partidos, etc)
- Y en general las consultas que se requieran en un
torneo de fútbol. - 1. Defina las entidades que deben ser
involucradas en el modelo. - 2. Desarrolle los esquemas que describan dichas
entidades. - 3. Identifique tanto las claves primarias como
las foráneas. - 4. Haga un diagrama del modelo E/R del sistema.
- 5. Especifique el diccionario de datos de la BD.