Informática. Introducción a las bases de datos relacionales. Diseño conceptual. Carmen Graciani Díaz Luis Valencia Cabrera

Documentos relacionados
Tema 2: Diseño conceptual de Bases de Datos.

Tema 1: Bases de datos relacionales. Diseño conceptual (2014/2015)

Tema 2: Diseño conceptual de Bases de Datos: el Modelo Entidad Relación

BASE DE DATOS Modelos de Datos

Unidad 2. Bases de Datos Relacionales

Diseño de base de datos: Modelo Entidad Relación (II)

- Bases de Datos (2012/2013) Tema 1: Bases de datos relacionales. Diseño conceptual

Introducción a las bases de datos relacionales (2010/2011)

Bases de Datos. Laboratorio III, L106/L111. Profesor: Goyo Celada

Tema II: Nivel conceptual de una Base de Datos. El modelo E/R

Modelos de Datos. Modelo Entidad-Relación

Tema II: Nivel conceptual de una Base de Datos. El modelo E/R

Sistemas de Bases de Datos I Modelo Conceptual Modelo Entidad-Relación

Diseño de base de datos: Modelo Entidad Relación (I)

Modelado Conceptual: El Modelo E/R Extendido. Modelado Conceptual: El Modelo E/R Extendido 1

Sistemas de Bases de Datos I. Modelo Conceptual. Modelo Entidad-Relación

Sistemas de Bases de Datos I. Modelo Conceptual. Modelo Entidad Relación

Modelado Entidad-Relación

Modelos de datos. Colección de herramientas conceptuales para describir

Fundamentos de Informática

INTERPRETACIÓN DEL DISEÑO CONCEPTUAL. MODELO ENTIDAD/RELACIÓN. UNIDAD 2

INTERPRETACIÓN DEL DISEÑO CONCEPTUAL. MODELO ENTIDAD/RELACIÓN. UNIDAD 2. Bases de datos. Modelado de BD

Gestion y Modelación de Datos Diseño de BD - Modelo Entidad Relación

Modelo Conceptual Modelo Entidad - Relación

Sistemas de Bases de Datos I Introducción y Conceptos Generales

INSTITUTO TECNOLOGICO SUPERIOR DE LERDO. ALUMNO: JUAN ESQUIVEL VAQUERA. ENSAYO: Modelo entidad-relación. PROFESOR: RICARDO BUSTAMANTE.

Base de Datos. Docente: Ing. Francisco Rodríguez BASE DATOS. Resultados. Internet. Requerimientos

Modelado Conceptual: El Modelo E/R Extendido

Sistemas de Bases de Datos I Introducción y Conceptos Generales

El modelo Entidad-Relación

UNIDAD 3 MODELO ENTIDAD- RELACION

- Bases de Datos (2012/2013) Tema 2: Diseño lógico. Modelo Relacional

TECNOLOGÍAS DE LA INFORMACIÓN PARA LA INNOVACIÓN. Facultad de Estadística e Informática

MODELIZACIÓN CONCEPTUAL DE DATOS

Gestión base de datos : Modelo Relacional (II)

Unidad 2 MODELO ENTIDAD - RELACIÓN

TEMA 3: REDUCCIÓN DE UN ESQUEMA E-R A TABLAS

Unidad II. Diseño Conceptual de una Base de Datos: Modelo Entidad/Relación Extendido. (Elmasri-Korth)

Tema 3: Diseño lógico de Bases de Datos. El Modelo Relacional

Introducción a las Bases de Datos UNIDAD II MODELO ENTIDAD-RELACION

BASES DE DATOS (IG18 Semipresencial) Diseño Conceptual de Bases de Datos. Modelo Entidad-Relación

Bases de Datos. Contenido. Oscar Marban 4302 Apuntes de Pau Arlandis Martinez

Bases de Datos Diseño de Bases de Datos Modelo Conceptual Entidad Relación

BASE DE DATOS RELACIONALES

EL MODELO RELACIONAL

Sistemas de Bases de Datos I MODELADO DE DATOS I. Sistema de Bases de Datos I

El Sistema de Información (S.I.) regula la distribución, el compartimiento y el almacenamiento de la información.

Tema 3: Diseño lógico de Bases de Datos: el Modelo Relacional

1. Cardinalidades de una Interrelación

Bases de datos 1. Teórico: Diseño Conceptual

BASES DE DATOS 1. Teórico: Diseño Conceptual

Estructuras de Almacenamiento de Datos

Modelos de Software. Ingeniería en Sistemas de Información

TEMA 3.- MODELOS CONCEPTUALES DE DATOS.

Modelo relacional. Modelo relacional

Tema 3: Diseño lógico de Bases de Datos. El Modelo Relacional

Diseño Lógico Estándar. Diseño Lógico Tema 12

2. Modelo Entidad- Relación

Ítems/Entidades/Objetos [sustantivos]: Objetos que existen en el mundo y que son

El Modelo Relacional. Carlos A. Olarte BDI

BASES DE DATOS II. Tema III:El problema del modelado conceptual. Profesores: Fernando Berzal Galiano Javier García Castellano Maria-Amparo Vila

Capítulo 2. El Modelo Entidad- Relación (E-R)

Análisis y Diseño de Sistemas Clase 17 Modelo Entidad- Relación

JUAN C. MIRANDA R. Unidad II. Elementos para Interpretar el Modelo Conceptual de Datos 01/06/2012. Unidad Curricular: Base de Datos

Modelado de Datos Material desarrollado por Marcelo Rocha Vargas, 2011

Temario. Tema 5. Bases de Datos Activas Tema 6. Disparadores en Oracle Prácticas de Disparadores en Oracle III. BD Semiestructuradas

Conceptos Objetivos Un modelo... Artefactos Ejercicio. Base de Datos. Modelo Entidad-Relación (E-R) Eduardo Saavedra A.

Diseño conceptual Diseño de bases de datos

PROGRAMA EDUCATIVO Maestría en ciencias de la computación

Recolección y Análisis de Requerimientos

Formato para prácticas de laboratorio

TEMA 2 MODELO CONCEPTUAL DE DATOS

TAREA No. 2 MODELO ENTIDAD RELACIÓN FANNY MILEISIS DIAZ PINTO

DISEÑO DE BASES DE DATOS RELACIONALES

CC BASES DE DATOS OTOÑO Clase 2: Modelo Relacional / ER. Aidan Hogan

Modelo entidad-relación

Diseño lógico de. Bases de Datos. Modelo. Entidad - Relación

Las tres reglas básicas para convertir un esquema en el modelo E/R al relacional son las siguientes:

id_trabajador nombre tarifa_hr tipo_de_oficio id_supv 1235 F. Aguilera 12,50 Electricista A. Calvo 13,75 Fontanero N.

Bases de Datos OTROS ASPECTOS MODELO E-R

Modelo de Datos. Los primeros conceptos que debemos conocer : datos, base datos,

Departamento de Informática Universidad de Valladolid Campus de Segovia TEMA 7, SECCIÓN 3: MODELADO DE DATOS

Diseño lógico El modelo Relacional. José Muñoz Jimeno Febrero 2015

Ing. Yim Isaias Apestegui Florentino

MODELO RELACIONAL. Andrés Moreno S. Modelo Relacional. Separación, Modelo Relacional

FACULTAD DE INGENIERÍA. Fundamentos de Bases de Datos

Unidad 5: MODELO DE COMPORTAMIENTO - ESQUEMA DE DATOS CARACTERÍSTICAS DEL ESQUEMA DE DATOS DIAGRAMA ENTIDAD RELACIÓN (D.E.R.)

5. El diseño lógico de una BD es independiente del modelo de datos elegido para su posterior implementación.

UNIVERSIDAD JOSE CARLOS MARIATEGUI. Figura 15. Figura 16

SGBD. Sistemas gestores de bases de datos (segunda parte) Autor: Editorial McGraw-Hill

BASES DE DATOS. Fundamentos de Informática Grado en Ing. Química. Jesús Alcalá y David Pelta

El Modelo E/R Extendido. Modelado Conceptual Tema 6

Carlos Castillo UPF 2008

Empleado. Departamento

Transcripción:

Introducción a las bases de datos relacionales. Diseño conceptual Carmen Graciani Díaz Dpto. Ciencias de la Computación e Inteligencia Artificial Universidad de Sevilla

Bases de datos relacionales: ideas preliminares Informalmente, BD relacional: conjunto de tablas que almacenan datos, relacionadas entre sí. Las tablas se organizan en registros (filas) y campos (columnas). Por ejemplo, puedo tener una tabla de departamentos: Tiene como vemos 4 campos, y en este momento contiene 12 registros.

Bases de datos relacionales: ideas preliminares Registro: cada una de las filas de la tabla. Recoge los datos asociados a un individuo/una ocurrencia de la tabla en cuestión: Ej: (1, Álgebra, ALG, 1). Campo: cada una de las partes en las que se desglosa todo registro. La tabla DEPARTAMENTO está formada por 4 campos: iddepto, nombre, siglas y facultad (id de la facultad sede del departamento). Tabla: conjunto formado por la definición de todos los campos y sus propiedades, junto con los datos de todos los registros.

Nos valdría cualquier conjunto de tablas Tablas planas: una tabla recopila todos los datos. Problema: duplicación de datos (ej: nombre, dirección ciudad...). Solución: tablas relacionales (datos organizados en distintas tablas con campos con contenido común).

Bases de datos relacionales Tabla AUTOR (3 registros, 5 campos). Tabla AUTOR (4 registros, 3 campos). Nota: el campo Autor de la tabla ESCRIBE y el campo DNI de la tabla AUTOR permiten enlazar ambas tablas relacionales.

Orígenes de las bases de datos relacionales El modelo de datos relacional fue propuesto por Edgar F. Codd en 1970. Idea principal: los datos se organizan mediante tablas relacionadas. El diseño conceptual está basado en el Modelo Entidad-Relación (Entidad-Interrelación, P. Chen, 1976). La mayoría de SGBD más empleados siguen siendo relacionales. El lenguaje de definición, manipulación y consulta estandar de estas bases de datos es SQL (Structured Query Language).

Diseño de bases de datos relacionales 3 fases principales: Diseño conceptual Diseño lógico. Diseño físico.

Diseño conceptual Punto de partida: especificación de requisitos (descripción detallada de la información a recoger en la base de datos y las prestaciones y funcionalidades a ofrecer). Producto: esquema conceptual. Lenguaje del modelo: modelo conceptual, en este caso empleando diagrama Entidad-Interrelación de Chen.

Diseño lógico Punto de partida: esquema conceptual. Producto: esquema lógico. Lenguaje del modelo: modelo lógico, en este caso empleando modelo relacional de Codd.

Diseño físico Punto de partida: esquema lógico. Producto: esquema físico. Lenguaje del modelo: descripción de características técnicas y de implementación de la base de datos en un determinado SGBD, detallando estructuras físicas, métodos de acceso o modelo de seguridad, entre otros.

Diseño Lógico Modelo Entidad-Interrelación (ER, DER, ERD) Modelo Entidad-Relación se sustenta en una serie de conceptos principales para describir la información más relavante de una parcela de la realidad mediante representaciones gráficas: Entidad Atributo Interrelación El esquema conceptual resultante se denomina Diagrama Entidad-Interrelación (DER).

Entidad Entidad Cualquier objeto concreto o abstracto del que se requiere almacenar información. Una persona, lugar, objeto, suceso, concepto... Tiene asociado un NOMBRE (generalmente, sustantivo singular). Ej: AUTOR, LIBRO, PRÉSTAMO, DEPARTAMENTO, ALUMNO, MATRICULACIÓN... Representación gráfica: rectángulo.

Interrelación Interrelación Correspondencia o asociación entre dos o más entidades. Tiene asociado un NOMBRE (generalmente, un verbo). Ej: interrelación ESCRIBE, entre las entidades AUTOR y LIBRO. Ej: la relación ESTUDIA, entre ALUMNO y ASINATURA Representación gráfica: rombo.

Atributo Atributo Propiedad o característica de interés sobre una entidad o interrelación. Ej: nombre del autor, fecha de nacimiento... Rango o dominio del atributo: conjunto de valores que puede tomar. Nota: solamente permitimos atributos univaluados. Representación gráfica: óvalo.

Atributo - Ejemplos Ejemplos: Atributos de la entidad ALUMNO: DNI, nombre, domicilio, edad. Dominio(edad): número entero Dominio(nombre): cadena de texto Dominio(domicilio): cadena de texto Atributos de la interrelación PRESTA: fecha. Dominio(fecha): fecha/hora.

Tipos de entidades Regular o fuerte: existe por sí misma, independientemente de cualquier otra. Débil: depende de alguna entidad existente. Si desaparece la anterior, desaparecerá la débil vinculada a la misma. Representación gráfica: doble rectángulo.

Tipos de entidades débiles Existencia (E) o fuerte: cada instancia (ocurrencia única) de la entidad débil se puede identificar por sus propios atributos. Identificación (ID): las instancias de la entidad no pueden ser identificadas por sus propios atributos. Se necesita añadir atributos de la entidad de la que depende para identificarse. Nota: diremos que la entidad débil tiene dependencia en existencia/identificación de la entidad de la que depende.

Tipos de entidades débiles - Ejemplos LIBRO(isbn,título,páginas,editorial,año) EJEMPLAR(código,tipo-pasta) EJEMPLAR es una entidad débil en existencia. La entidad EJEMPLAR depende de la entidad fuerte LIBRO, pero se identifican las ocurrencias de la entidad mediante el código único asociado a cada ejemplar de la biblioteca.

Tipos de entidades débiles - Ejemplos CUENTA- BANCARIA(codigoCuenta,titulo,fechaApertura,saldo) OPERACION(numOperacionCuenta,tipo,fecha,cantidad) OPERACION es una entidad débil en identificación, que depende en identificación de la entidad fuerte. El número de la operación dentro de la cuenta desde su apertura (1, 2, 3, 4...) no basta para identificarla, necesitamos además el código de la cuenta a la que está asociada.

Claves y discriminadores Clave de una entidad: conjunto de atributos que permiten identificar de forma única a cada instancia de la entidad. Debe ser minimal (ningún subconjunto de la misma puede actuar como clave). Clave candidata: cada conjunto de atributos que puede actuar como clave de una entidad. Clave primaria (PK, primary key): clave candidata elegida por el diseñador para identificar las instancias de la entidad. Representación gráfica: atributo subrayado (ĺınea continua).

Claves y discriminadores - Ejemplos ALUMNO(nif,nombre,código,edad,población) Claves candidatas: {nif} {código} Nota: {nombre,apellidos} no es una clave, ya que pueden existir en la bd dos alumnos con el mismo nombre y apellidos. PRESTAMO(ISBN-libro,título,nif,fecha,codPréstamo) Claves candidatas: {codprestamo} {ISBN-libro,nif,fecha}

Discriminador de una entidad débil Una entidad débil con dependencia en identificación NO puede identificar por sí sola a las instancias de la entidad (para identificarse necesita además datos de la entidad fuerte a la que está vinculada). Por tanto, NO posee clave primaria. Pero es necesario identificar, distinguir entre sí a cada instancia de la entidad débil vinculada a una instancia concreta de la entidad fuerte asociada. Este es el papel del discriminador. Discriminador: conjunto minimal de atributos que, junto con la clave primaria de la entidad fuerte de la que depende en identificación, permiten identificar a cada instancia de la entidad débil.

Discriminador de entidad débil en ID - Ejemplos CUENTA(código,nif-titular,fecha-apertura,saldo) OPERACION(numOperacionCuenta,tipo,fecha,cantidad) OPERACION tiene dependencia en ID de CUENTA. El atributo código es una clave candidata, que elegimos como clave primaria, de la entidad fuerte CUENTA. El atributo numoperacioncuenta es un discriminador para OPERACION puesto que, junto con el atributo código de la entidad CUENTA, permite diferenciar cada operación de la CUENTA.

Cardinalidad y tipo de una interrelación Cardinalidad de una interrelación: Sea una interrelación R asocia a las entidades E 1 y E 2. Cardinalidad de la entidad E 1 en la interrelación R: es el par (a, b) que indica el número mínimo a y máximo b de instancias de E 1 que pueden estar asociadas a una instancia fija de E 2. Son posibles las cardinalidades (0, 1), (1, 1), (0, n), (1, n). Nota: n significa varios, muchos.

Cardinalidad y tipo de una interrelación - Ejemplos Interrelación PERTENECE entre CLIENTE y PEDIDO. PEDIDO participa con cardinalidad (1, n): Fijado un CLIENTE, al menos, tendrá asociado un pedido, y puede tener asociados varios pedidos. CLIENTE participa con cardinalidad (1, 1): Fijado un PEDIDO, tendrá asociado obligatoriamente un cliente, y sólo uno.

Cardinalidad y tipo de una interrelación - Ejemplos Interrelación CURSA entre las entidades ALUMNO y ASIGNATURA. ASIGNATURA participa con cardinalidad (1, n): Fijado un ALUMNO, al menos, estará matriculado en una asignatura, y puede cursar varias asignaturas. ALUMNO participa con cardinalidad (0, n): Fijada una ASIGNATURA, puede que ningún alumno se haya matriculado de la asignatura, y puede ser cursada por muchos alumnos.

Cardinalidad y tipo de una interrelación - Ejemplos Interrelación ES entre las entidades PAIS y CAPITAL. CAPITAL participa con cardinalidad (1, 1): Fijado un PAIS, tendrá asociado obligatoriamente una capital, y sólo una. PAÍS participa con cardinalidad (1, 1): Fijada una CAPITAL, tendrá asociado obligatoriamente un país, y sólo uno.

Cardinalidad y tipo de una interrelación - Ejemplos Interrelación PERTENECE entre las entidades CUENTA y OPERACION (relación débil en identificación). CUENTA participa con cardinalidad (1, 1): Fijada una OPERACION, tendrá asociada obligatoriamente una cuenta, y sólo una. OPERACION participa con cardinalidad (0, n): Fijada una CUENTA, puede no tener asociada ninguna operación, y puede tener asociada muchas operaciones. Nota: En una relación débil en identificación, la entidad fuerte participa con cardinalidad (1, 1).

Tipo de una interrelación Sea R una interrelación entre dos entidades E 1 y E 2 : Tipo de R: par (a : b), donde a y b son las cardinalidades máximas de E 1 y E 2 en R. Los tipos que se pueden dar son: Una a una (1 : 1). Una a muchas (1 : N), o cero a muchas (0 : N). Muchas a muchas (N : M).

Tipo de una interrelación - Ejemplos Una a una (1 : 1): una instancia de E 1 está asociada con una, y sólo una, instancia de E 2. (Ejemplo: País y Capital) Una a muchas (1 : N): una instancia de E 1 puede estar asociada con muchas instancias de E 2, pero una instancia de E 2 sólo puede estar asociada con una instancia de E 1. (Ejemplo: Cliente y Pedido)

Tipo de una interrelación - Ejemplos Muchas a Muchas (N : M): una instancia de E 1 puede estar asociada con muchas instancias de E 2 y viceversa. (Ejemplo: Alumno y Asignatura)

Jerarquías de generalización/especialización Jerarquías de generalización/especialización Descomposición de una entidad padre (o supertipo) en varias entidades hijo (o subtipos). Los subtipos heredan los atributos de la entidad padre. Los subtipos pueden además poseer atributos propios. Ejemplo: La entidad padre Documento se divide en los subtipos: Libro, Artículo y Revista. Para incluir jerarquías en el modelo E R, se emplean relaciones de especialización ES-UN (en inglés, IS-A).: Representación gráfica: triángulo invertido.

Clases de Jerarquías Clases de Jerarquías de generalización/especialización Total o parcial: Total (ĺınea doble): cada instancia del supertipo pertenece obligatoriamente a un subtipo. Parcial (ĺınea simple): puede haber instancias del supertipo que no pertenecen a ningún subtipo. Nota: si añadimos un subtipo Otros a una jerarquía parcial, se convierte en total. Exclusiva o solapada: Exclusiva (disjoint, d): una instancia del supertipo solamente puede pertenecer a un subtipo. Solapada (overlapping, o): una instancia del supertipo puede pertenecer a más de un subtipo. Nota: si añadimos un subtipo Otros a una jerarquía parcial, se convierte en total.

Clases de Jerarquías - Ejemplos El supertipo Persona y los subtipos Hombre, Mujer forman una jerarquía total y exclusiva. El supertipo Socio y los subtipos Trabajador, Estudiante, Jubilado, Otros forman una jerarquía total y solapada (un socio puede estudiar y trabajar a la vez).

Clases de Jerarquías - Ejemplos El supertipo Obra y los subtipos Pintura, Escultura forman una jerarquía parcial y exclusiva (puede que una obra no sea ni escultura ni pintura). El supertipo Obra y los subtipos Libro, Artículo, Recopilación forman una jerarquía parcial y solapada (una recopilación es también un libro).

Interrelaciones reflexivas Interrelaciones reflexivas Interrelación reflexiva: es una relación que asocia una entidad consigo misma. Ejemplo: algunos empleados que pueden ser jefes de otros empleados. Definimos la interrelación Supervisa, que asocia la entidad Empleado consigo misma. Nota: Si los empleados pueden dividirse en jefes y subordinados, es preferible usar una jerarquía de generalización. Ahora bien, si un jefe puede a su vez tener otro jefe de nivel superior y así recursivamente es necesario usar una relación reflexiva.

Interrelaciones reflexivas - Roles En una relación reflexiva la misma entidad participa 2 veces. Ahora bien, cada vez cumpliendo un papel o rol distinto. Ejemplo: Empleado participa en la relación Supervisa: Una vez cumpliendo el rol: ser jefe de. Otra vez cumpliendo el rol: estar subordinado a. Nota: cuando en un DER aparecen relaciones reflexivas, deben escribirse los correspondientes roles. Es esencial para determinar las cardinalidades en la relación.

Interrelaciones históricas Para dos entidades de un DER podemos considerar más de una relación que las asocie. Útil para almacenar información histórica completa. Ejemplo: proyectos en los que trabaja actualmente un empleado y proyectos en los que ha trabajado anteriormente. Establecemos dos relaciones Trabaja y Trabajaba entre las entidades EMPLEADO y PROYECTO.

Interrelaciones de grado K 3 Interrelaciones de grado K 3 En un DER pueden aparecer relaciones que asocien a más de dos entidades, esto es, de grado k 3. Ejemplo: La relación ternaria Nota asocia las entidades Alumno, Asignatura y Convocatoria.

Interrelaciones de grado K 3 - Simplificación Siempre es posible transformar un DER en otro equivalente en el cual sólo aparecen relaciones binarias. Método: Supongamos que R asocia las entidades E 1, E 2, E 3 : 1 Eliminar la interrelación R. 2 Añadir una nueva entidad E 4 con los atributos de R. 3 Añadir tres relaciones binarias nuevas: R 1 entre E 4 y E 1. R 2 entre E 4 y E 2. R 3 entre E 4 y E 3.

Algunos ejercicios A continuación se proporcionan enlaces a algunos ejercicios sobre diseño conceptual: Pedidos Centro comercial Videoteca - Discoteca Parques naturales Ejercicios adicionales Podemos realizar los diseños mediante el programa Dia Diagram Editor.