1. Modelo E/R: Entidades y atributos
Flashcards
- ¿Qué diferencia a una entidad regular de una débil?
- La regular existe por sí misma; la débil depende de la existencia de otra entidad regular.
- ¿Qué simbolismo gráfico distingue a ambas entidades?
- La entidad regular se representa con un rectángulo y la entidad débil con dos rectángulos concéntricos.
- ¿Qué es un atributo en el modelo Entidad-Relación?
- Es cada propiedad o característica que describe, cualifica o cuantifica una entidad o interrelación.
- ¿Qué símbolo representa un Identificador Único (UID) en un diagrama?
- Se representa mediante el signo de número (#).
Preguntas tipo test
- ¿Cómo se representa gráficamente una entidad débil dentro de un esquema Entidad-Relación?
- a) Mediante un único rectángulo con el texto subrayado
- b) Mediante un rombo con trazo discontinuo y su nombre
- c) Mediante dos rectángulos concéntricos con su nombre
- d) Mediante una elipse sombreada unida a un rectángulo
Respuesta: c) Mediante dos rectángulos concéntricos con su nombre. Las entidades regulares se representan mediante un solo rectángulo, mientras que las entidades débiles se representan por medio de dos rectángulos concéntricos.
- ¿Qué consecuencia directa tiene la eliminación de una entidad regular sobre una entidad débil dependiente?
- a) La entidad débil pasa a depender automáticamente de otra regular
- b) Los atributos de la entidad débil se integran en la base de datos
- c) La entidad débil se convierte de inmediato en una entidad regular
- d) Desaparecen también las ocurrencias asociadas de la entidad débil
Respuesta: d) Desaparecen también las ocurrencias asociadas de la entidad débil. Al carecer de existencia propia, la desaparición de la ocurrencia de la entidad regular acarrea la desaparición de las ocurrencias de la entidad débil subordinadas a ella.
- ¿Qué conjunto define los valores posibles que puede tomar un atributo determinado?
- a) El grado de la relación subyacente
- b) El dominio asociado a dicho atributo
- c) La clave externa de la entidad regular
- d) La cardinalidad máxima del esquema
Respuesta: b) El dominio asociado a dicho atributo. El conjunto de valores válidos que puede tomar un atributo se denomina dominio, teniendo este existencia y definición propia con independencia del atributo.
2. Modelo E/R: Interrelaciones
Flashcards
- ¿Qué es una interrelación en el modelo E/R?
- Es la asociación o correspondencia existente entre dos o más entidades del modelo.
- ¿Qué representa una interrelación reflexiva o de grado 1?
- Una interrelación donde una entidad se relaciona directamente consigo misma.
- ¿Qué es una ocurrencia de una interrelación?
- La vinculación concreta establecida entre ocurrencias específicas de las entidades participantes.
- ¿Qué es la cardinalidad de una entidad en una interrelación?
- El número mínimo y máximo de ocurrencias asociables a una ocurrencia de las demás entidades.
Preguntas tipo test
- ¿A qué hace referencia el grado de una interrelación en el modelo E/R?
- a) Al número máximo de ocurrencias permitidas por cada entidad
- b) Al número de entidades que participan activamente en la interrelación
- c) Al número de atributos propios que posee el rombo de la relación
- d) Al número de claves primarias combinadas que identifican el vínculo
Respuesta: b) Al número de entidades que participan activamente en la interrelación. El grado de una interrelación se define explícitamente como el número de entidades que participan en dicha interrelación.
- ¿Por qué motivo no siempre es aconsejable descomponer una interrelación de grado $n$ en varias de grado 2?
- a) Porque se duplicaría obligatoriamente el número de atributos identificadores
- b) Porque la semántica de la realidad modelada puede verse alterada o perderse
- c) Porque aumentaría de forma incontrolada el número de entidades débiles
- d) Porque los gestores de bases de datos relacionales no admiten tablas binarias
Respuesta: b) Porque la semántica de la realidad modelada puede verse alterada o perderse. Aunque a veces una interrelación de grado $n$ se puede descomponer en varias de grado 2, otras veces no es posible porque el significado semántico de ambas soluciones no es equivalente.
- Observa el esquema ¿Qué tipo de interrelación según su grado se representa en él?
- a) Una interrelación de grado 1, también denominada reflexiva
- b) Una interrelación binaria entre dos entidades regulares
- c) Una interrelación exclusiva implementada mediante disparadores
- d) Una interrelación ternaria compuesta por tres entidades
Respuesta: a) Una interrelación de grado 1, también denominada reflexiva. La figura muestra la entidad TEMA relacionándose consigo misma mediante 'consta', lo que corresponde a una interrelación de grado 1 o reflexiva.
3. Jerarquía de entidades y construcción del esquema E/R
Flashcards
- ¿Cómo se representa gráficamente la relación jerárquica ES-UN?
- Mediante un triángulo invertido conectado al supertipo y a sus subtipos correspondientes.
- ¿Qué indica el arco sobre las líneas de una jerarquía?
- Especialización exclusiva (sin solapamiento): una ocurrencia del supertipo pertenece como máximo a un subtipo.
- ¿Qué representa un círculo sobre la relación jerárquica?
- Especialización total (obligatoria): toda ocurrencia del supertipo debe pertenecer obligatoriamente a algún subtipo.
- ¿Qué es un dominio en el modelo entidad-relación?
- El conjunto de valores posibles que puede tomar un atributo, con nombre y existencia propia independiente.
Preguntas tipo test
- ¿Qué tipo de especialización jerárquica muestra el siguiente diagrama?
- a) Inclusiva total, debido a que permite pertenecer a varios subtipos pero exige estar en alguno de ellos.
- b) Exclusiva total, porque presenta tanto el arco que impide solapamiento como el círculo de obligatoriedad.
- c) Inclusiva parcial, dado que no restringe la pertenencia simultánea ni obliga a pertenecer a ningún subtipo.
- d) Exclusiva parcial, ya que contiene el arco de exclusión pero carece de la marca de pertenencia obligatoria.
Respuesta: b) Exclusiva total, porque presenta tanto el arco que impide solapamiento como el círculo de obligatoriedad.. El diagrama muestra la entidad PERSONA subdividida en NIÑO, ADULTO y ANCIANO mediante un arco (que denota exclusividad) y un círculo (que representa totalidad u obligatoriedad).
- En una jerarquía de generalización y especialización, ¿cuáles son las cardinalidades que corresponden al supertipo y a los subtipos?
- a) Siempre $(1,n)$ en el supertipo, y $(0,n)$ en cualquiera de las entidades subtipo.
- b) Siempre $(0,n)$ en el supertipo, y $(1:1)$ sin posibilidad de cardinalidad mínima cero.
- c) Siempre $(1,1)$ en el supertipo, y $(1:1)$ o $(0:1)$ en cada uno de los subtipos.
- d) Siempre $(0,1)$ en el supertipo, y $(1,1)$ de manera obligatoria en los subtipos.
Respuesta: c) Siempre $(1,1)$ en el supertipo, y $(1:1)$ o $(0:1)$ en cada uno de los subtipos.. Toda ocurrencia de un subtipo es obligatoriamente una ocurrencia del supertipo (cardinalidad $(1,1)$ en el supertipo), mientras que una ocurrencia del supertipo puede o no pertenecer a un subtipo concreto (cardinalidad $(1:1)$ o $(0:1)$ en los subtipos).
- ¿Cómo se representan gráficamente la exclusividad y la totalidad en las jerarquías de entidades?
- a) La exclusividad mediante un círculo concéntrico y la totalidad a través de un rombo etiquetado con letras.
- b) La exclusividad con un arco que une las líneas de los subtipos y la totalidad con un círculo sobre la relación.
- c) La exclusividad con una flecha orientada y la totalidad duplicando el triángulo invertido de la jerarquía.
- d) La exclusividad mediante un doble rectángulo y la totalidad mediante una línea discontinua hacia el subtipo.
Respuesta: b) La exclusividad con un arco que une las líneas de los subtipos y la totalidad con un círculo sobre la relación.. La especialización exclusiva (sin solapamiento) se indica con un arco que une las líneas que salen de la relación, mientras que la especialización total (obligatoria) se representa situando un círculo sobre la relación.
4. Introducción y terminología del Modelo Relacional
Flashcards
- ¿Quién propuso el modelo relacional y en qué año?
- Edgar F. Codd en 1970.
- ¿Qué es la independencia lógica en el modelo relacional?
- Modificar elementos de la base de datos sin repercutir en programas que acceden a subconjuntos parciales.
- ¿Qué significa el objetivo de uniformidad?
- Presentar todas las estructuras lógicas de datos con un aspecto uniforme mediante tablas.
- ¿Qué es el grado de una relación?
- El número de atributos o columnas que componen la relación.
Preguntas tipo test
- ¿En qué consiste la independencia física que persigue el modelo relacional propuesto por Codd?
- a) En asegurar que la adición o eliminación de elementos de la base de datos no altere las vistas de usuario.
- b) En impedir que las modificaciones en el almacenamiento físico obliguen a alterar los programas de usuario.
- c) En permitir que las tablas mantengan un orden predeterminado en disco sin depender del sistema operativo.
- d) En garantizar que el formato de las tuplas sea independiente del tipo de datos definido en cada dominio.
Respuesta: b) En impedir que las modificaciones en el almacenamiento físico obliguen a alterar los programas de usuario.. La independencia física establece que la forma en que se almacenan físicamente los datos no debe influir en su manipulación lógica, evitando que los programas se modifiquen ante cambios de almacenamiento.
- ¿Qué objetivo del modelo relacional busca que los datos se presenten siempre mediante tablas para facilitar su manipulación?
- a) Sencillez
- b) Independencia lógica
- c) Uniformidad
- d) Flexibilidad
Respuesta: c) Uniformidad. El objetivo de uniformidad garantiza que las estructuras lógicas presenten un aspecto homogéneo en forma de tablas, facilitando la concepción y manipulación por parte de los usuarios.
- Observa la tabla mostrada en la figura. ¿Cuáles son su grado y su cardinalidad?
- a) Grado 5 y cardinalidad 4
- b) Grado 4 y cardinalidad 5
- c) Grado 3 y cardinalidad 5
- d) Grado 4 y cardinalidad 4
Respuesta: b) Grado 4 y cardinalidad 5. El grado corresponde al número de columnas o atributos (4: COD_MATRICULA, NOMBRE, CIUDAD, COD_GRUPO) y la cardinalidad al número de filas o tuplas de datos (5 alumnos).
5. Claves y restricciones de integridad en el Modelo Relacional
Flashcards
- ¿Qué es una clave candidata en el modelo relacional?
- Es un conjunto de atributos que identifica unívocamente cada tupla; de entre todas las candidatas se elige la clave primaria.
- ¿Qué es una clave ajena (foreign key)?
- Atributo o conjunto de atributos cuyos valores coinciden con la clave primaria de otra tabla o de la misma relación.
- ¿Qué tipo de relación y claves muestra el siguiente esquema?
- Muestra las tablas AUTOR y LIBRO enlazadas mediante la relación ESCRIBE, cuya clave primaria se forma con claves ajenas de ambas.
- ¿Qué establece la restricción de integridad referencial?
- Los valores de la clave ajena en la relación hija deben coincidir con la clave primaria del padre o ser nulos.
Preguntas tipo test
- ¿Cuál es la diferencia fundamental entre una clave candidata y la clave primaria en una relación?
- a) La clave primaria la define el usuario final en cada consulta, mientras que las claves candidatas son impuestas de forma rígida por el sistema gestor.
- b) La clave primaria puede aceptar valores nulos según las necesidades del diseño, mientras que las claves candidatas nunca los admiten.
- c) Las claves candidatas se definen únicamente sobre un atributo individual, mientras que la clave primaria siempre está compuesta por varios.
- d) Las claves candidatas son todas las combinaciones que identifican unívocamente una tupla, y entre ellas se elige una como primaria.
Respuesta: d) Las claves candidatas son todas las combinaciones que identifican unívocamente una tupla, y entre ellas se elige una como primaria.. Una tabla puede disponer de varias combinaciones de atributos que identifican de forma unívoca a cada tupla (claves candidatas); entre todas ellas se selecciona una como clave principal o primaria, pasando las demás a ser claves alternativas.
- En el esquema de la figura , ¿qué función desempeñan los atributos que componen la tabla ESCRIBE?
- a) Constituyen exclusivamente claves alternativas sin relación de dependencia referencial con las tablas principales.
- b) Representan atributos secundarios no primarios que duplican información por motivos de rendimiento físico.
- c) Actúan como clave primaria compuesta y a la vez cada uno de ellos es una clave ajena que referencia a AUTOR y LIBRO.
- d) Son identificadores numéricos generados automáticamente que no requieren correspondencia con las claves de AUTOR ni de LIBRO.
Respuesta: c) Actúan como clave primaria compuesta y a la vez cada uno de ellos es una clave ajena que referencia a AUTOR y LIBRO.. En el esquema de la figura, Nombre y Cod_Libro forman la clave primaria de ESCRIBE y simultáneamente son claves ajenas que enlazan con las claves primarias de las tablas AUTOR y LIBRO.
- ¿Qué consecuencia tiene la opción de borrado restringido (RESTRICT) sobre una clave ajena?
- a) Elimina de forma automática todas las tuplas de la relación hija asociadas al registro borrado del padre.
- b) Modifica el valor de la clave ajena en las tuplas hijas asignándole un valor nulo de manera temporal.
- c) Impide la eliminación de una tupla en la tabla padre si existen tuplas relacionadas en la tabla hija.
- d) Sustituye la clave ajena de las tuplas hijas por un identificador por defecto previamente registrado.
Respuesta: c) Impide la eliminación de una tupla en la tabla padre si existen tuplas relacionadas en la tabla hija.. La opción RESTRICT no permite llevar a cabo el borrado o modificación en la relación padre si existen tuplas en la relación hija que dependan de ella.
6. Transformación del Modelo E/R a esquemas relacionales
Flashcards
- ¿En qué se transforma una entidad al pasar al modelo relacional?
- Se transforma en una tabla, sus atributos en columnas y su identificador en clave primaria.
- ¿Cómo se transforma una interrelación N:M al modelo relacional?
- Se genera una nueva tabla cuya clave primaria es la concatenación de las claves primarias de ambas entidades.
- ¿Qué esquema relacional representa esta relación 1:1 con cardinalidades (1,1)?
- Una sola tabla fusionada, o dos tablas propagando la clave de una entidad a la otra como foránea.
- ¿Cómo se transforma una interrelación reflexiva N:M?
- Se crea una nueva tabla cuya clave primaria es la unión de dos claves ajenas hacia la misma entidad.
Preguntas tipo test
- Al transformar una entidad regular al modelo relacional, ¿en qué elemento se convierte su identificador principal?
- a) En un índice secundario opcional de la base de datos
- b) En la clave primaria de la tabla resultante
- c) En una clave foránea que referencia a otra entidad
- d) En una columna con restricción exclusiva de unicidad
Respuesta: b) En la clave primaria de la tabla resultante. En las reglas de transformación básicas, cada tipo de entidad pasa a ser una tabla y su identificador único se convierte en la clave primaria de dicha tabla.
- En una interrelación binaria 1:1 donde ambas entidades participan de forma total (1,1), ¿cuál es la solución habitual?
- a) Fusionar ambas entidades en una única tabla relacional
- b) Propagar simultáneamente las dos claves en ambos sentidos
- c) Eliminar los atributos propios que contenga la interrelación
- d) Generar obligatoriamente una tabla intermedia adicional
Respuesta: a) Fusionar ambas entidades en una única tabla relacional. Cuando ambos tipos de entidad participan con cardinalidad mínima (1,1) en una relación 1:1, normalmente se transforman en una sola tabla, aunque también cabe propagar la clave de cualquiera de ellas.
- En la regla general de transformación de una relación 1:N, ¿dónde se ubica la clave foránea?
- a) En ambas tablas de forma simétrica y cruzada
- b) En una tabla intermedia creada obligatoriamente
- c) En la tabla del lado con cardinalidad máxima N
- d) En la tabla del lado con cardinalidad máxima 1
Respuesta: c) En la tabla del lado con cardinalidad máxima N. En las interrelaciones 1:N, el identificador de la entidad con cardinalidad máxima uno se propaga a la tabla de la entidad con cardinalidad máxima N como clave foránea.
Y 18 flashcards y 23 preguntas más en el documento.
Texto del documento
CICLOS FORMATIVOS Asir MODULO: BASE DE DATOS BLOQUE II: DISEÑO LOGICO DE B.D.MODELO E/RE 1 Publicado es España bajo licencia Creative Commons Reconocimiento 3.0 (CC BY). http://creativecommons.org/licenses/by/3.0/es/deed.es 1. EL MODELO E/R ___________________________________________________________ 2 1.1. Elementos del modelo E/R ______________________________________________________2 1.1.1. Entidad __________________________________________________________________________2 1.1.2. Atributo__________________________________________________________________________3 1.1.3.
Interrelación ______________________________________________________________________5 Atributos en las relaciones ___________________________________________________________________11 Jerarquía de entidades ______________________________________________________________________14 1.1.1. Dominio_________________________________________________________________________18 1.1.2. Construcción de un esquema E/R ____________________________________________________18 CICLOS FORMATIVOS Asir MODULO: BASE DE DATOS BLOQUE II: DISEÑO LOGICO DE B.D.MODELO E/RE 2 Publicado es España bajo licencia Creative Commons Reconocimiento 3.0 (CC BY). http://creativecommons.org/licenses/by/3.0/es/deed.es 1.
EL MODELO E/R Un modelo es un instrumento que aplicamos a una parcela del mundo real para obtener una estructura de datos a la que denominamos esquema y que nos será útil para definir un Sistema de Información. El modelo E/R (Entidad/Interrelación) fue propuesto por Peter Chen en 1976. Posteriormente muchos autores han investigado y escrito sobre el modelo proponiendo importantes aportaciones. Por ello no se puede decir que exista un único modelo E/R sino una familia de ellos, que extienden el modelo básico propuesto por Chen. Se trata de un modelo que permite una vista unificada de los datos manejados por un sistema. 1.1.
Elementos del modelo E/R Veamos cada uno de los componentes principales del modelo: 1.1.1. Entidad Una entidad es aquel objeto (real o abstracto) acerca del cual queremos almacenar información en la base de datos. Según ANSI, es "una persona, lugar, cosa o suceso, real o abstracto, de interés para la empresa". Por ejemplo, EMPLEADO. Existen dos clases de entidades: Entidades regulares: son aquellas que tienen existencia por sí mismas. Por ejemplo, PROYECTO, DEPARTAMENTO, LIBRO, AUTOR. Entidades débiles: son aquellas cuya existencia depende de otra entidad.
Por ejemplo, FAMILIAR depende de EMPLEADO y la desaparición de un empleado de la BD lleva consigo que desaparezcan también todos los familiares que estaban a su cargo. Las entidades regulares se representan por un rectángulo y las débiles por dos rectángulos concéntricos, ambas con el nombre de la entidad en su interior. FAMILIAR LIBRO CICLOS FORMATIVOS Asir MODULO: BASE DE DATOS BLOQUE II: DISEÑO LOGICO DE B.D.MODELO E/RE 3 Publicado es España bajo licencia Creative Commons Reconocimiento 3.0 (CC BY). http://creativecommons.org/licenses/by/3.0/es/deed.es 1.1.2. Atributo Es cada una de las propiedades o características que tiene una entidad o una interrelación.
Por ejemplo, la entidad AUTOR tiene como atributos el nombre, nacionalidad, fecha_nac, biografía, etc; y los atributos de documento pueden ser título y resumen. Al igual que una entidad, un atributo representa algo importante para el negocio. Un atributo es información específica que ayuda a: Describir una entidad Cuantificar una entidad Cualificar una entidad Clasificar una entidad Especificar una entidad Un atributo tiene un valor único Los atributos tienen valores. Un valor de atributo puede ser un número, una cadena de caracteres, una fecha, una imagen, un sonido, etc.
Entidades Atributos CLIENTE apellido, edad, número de pie, ciudad de residencia, correo electrónico VEHÍCULO modelo, peso, precio de catálogo PEDIDO fecha de pedido, fecha de envío CARGO título, descripción CICLOS FORMATIVOS Asir MODULO: BASE DE DATOS BLOQUE II: DISEÑO LOGICO DE B.D.MODELO E/RE 4 Publicado es España bajo licencia Creative Commons Reconocimiento 3.0 (CC BY). http://creativecommons.org/licenses/by/3.0/es/deed.es Estos se denominan "tipos de dato" o "formatos". Cada atributo almacena una parte de los datos de un tipo de dato específico Si fuéramos a modelar un sistema de recursos humanos, tendríamos una entidad para almacenar datos para cada trabajador denominada EMPLEADO.
¿Qué atributos tiene EMPLEADO? Dé uno o dos ejemplos de los valores que puede contener cada atributo de EMPLEADO. Entre los atributos de una entidad debemos elegir uno o varios que identifiquen unívoca y mínimamente cada una de las ocurrencias de ese tipo de entidad (atributo identificador principal, PK). Puede que exista más de un atributo que cumpla esta condición (atributo identificador candidato) de los cuales se elige uno como principal y otros como alternativos. La clave primaria (PK) es una columna o un juego de columnas que identifica de forma única cada fila de tabla. No puede contener valores nulos.
La clave primaria es una columna de la tabla o una generada específicamente por la base de datos según una secuencia definida. Debe contener un valor único para cada fila de datos. Un UID es un atributo de una entidad que es único en todas las instancias de la entidad. Tiene un valor no NULL para cada instancia de la entidad durante el tiempo que dure la instancia. Su valor nunca cambia durante el tiempo que dura la instancia. Un UID obtiene un diagrama con un signo de número (#).
Llamamos ocurrencia de una entidad a cada una de las realizaciones concretas de esa entidad, Por ejemplo, de la entidad AUTOR las ocurrencias podrían ser: Gabriel García Márquez, Julio Cortázar, Mario Vargas Llosa, etc. TRANSACCIÓN cantidad, fecha de transacción CONTRATO DE TRABAJO fecha de inicio, salario CICLOS FORMATIVOS Asir MODULO: BASE DE DATOS BLOQUE II: DISEÑO LOGICO DE B.D.MODELO E/RE 5 Publicado es España bajo licencia Creative Commons Reconocimiento 3.0 (CC BY). http://creativecommons.org/licenses/by/3.0/es/deed.es 1.1.3. Interrelación Se entiende por interrelación aquella asociación o correspondencia existente entre entidades.
Se representa con un rombo etiquetado con el nombre de la interrelación, unido mediante arcos a las entidades que asocia. Otra notación: LIBRO EJEMPLAR tiene 1:N CICLOS FORMATIVOS Asir MODULO: BASE DE DATOS BLOQUE II: DISEÑO LOGICO DE B.D.MODELO E/RE 6 Publicado es España bajo licencia Creative Commons Reconocimiento 3.0 (CC BY). http://creativecommons.org/licenses/by/3.0/es/deed.es Entre entidades puede existir más de un tipo de interrelación: Llamamos ocurrencia de una interrelación a la vinculación existente entre las ocurrencias concretas entre cada una de las entidades que intervienen en la interrelación, Por ejemplo, Gabriel García Márquez escribe "Cien años de soledad".
Los elementos de una interrelación son los siguientes: Nombre: Como todo objeto del modelo, cada tipo de interrelación tiene un nombre que lo distingue unívocamente del resto. Va incluido en el rombo y debe aparecer siempre. Grado: Es el número de entidades que participan en una interrelación. Interrelación de grado 1: o reflexiva. Puede indicar, por ejemplo, que un tema está compuesto de (sub)temas. AUTOR LIBRO escribe edita TEMA consta CICLOS FORMATIVOS Asir MODULO: BASE DE DATOS BLOQUE II: DISEÑO LOGICO DE B.D.MODELO E/RE 7 Publicado es España bajo licencia Creative Commons Reconocimiento 3.0 (CC BY).
http://creativecommons.org/licenses/by/3.0/es/deed.es Interrelación de grado 2: Interrelación de grado n (mayor que dos): Una interrelación de grado n puede descomponerse en varias de grado 2. Sin embargo, otras veces no es posible, porque la semántica (lo que significan) de una u otra solución no es la misma. JUGADOR EQUIPO Juega en AUTOR LIBRO escribe INSTITUCIÓN CICLOS FORMATIVOS Asir MODULO: BASE DE DATOS BLOQUE II: DISEÑO LOGICO DE B.D.MODELO E/RE 8 Publicado es España bajo licencia Creative Commons Reconocimiento 3.0 (CC BY).
http://creativecommons.org/licenses/by/3.0/es/deed.es Cardinalidad de las entidades: es el número mínimo y máximo de ocurrencias de una entidad que pueden estar interrelacionadas con una ocurrencia de las otras entidades que participan en la interrelación. Su representación gráfica es una etiqueta del tipo (0,1), (1,1), (0,n) o (1,n), según corresponda. Por ejemplo, si a un DEPARTAMENTO pertenecen de 0 a N empleados, en la entidad EMPLEADO aparecerán las cardinalidades (0,n); en el otro sentido, podemos suponer que un EMPLEADO tiene que pertenecer obligatoriamente a un departamento y sólo a uno, por lo que las cardinalidades de DEPARTAMENTO serán (1,1).
(En algunos métodos o libros, las etiquetas se ponen al contrario (0,n) en DEPARTAMENTO y (1,1) en EMPLEADO). EMPLEADO DEPARTAMENTO trabaja (1,1) (0,N) Pedro Ana José María Celia Jaime Laura Marketing Comercial Dirección Administración i+D CICLOS FORMATIVOS Asir MODULO: BASE DE DATOS BLOQUE II: DISEÑO LOGICO DE B.D.MODELO E/RE 9 Publicado es España bajo licencia Creative Commons Reconocimiento 3.0 (CC BY). http://creativecommons.org/licenses/by/3.0/es/deed.es Un alumno tiene de uno a varios profesores y un profesor tiene a uno o varios alumnos.
Tipo de correspondencia: es el número máximo de ocurrencias de cada entidad que pueden intervenir en una ocurrencia de la interrelación que se está tratando; para representarlo gráficamente se ponen etiquetas con: o (1:1): cuando en la interrelación pueden aparecer, como máximo, una ocurrencia de cada entidad. ALUMNO PROFESOR tiene M:N (1,N) (1,N) Pedro Ana José María Celia Jaime Laura Rosa Elena Ramón Miguel CICLOS FORMATIVOS Asir MODULO: BASE DE DATOS BLOQUE II: DISEÑO LOGICO DE B.D.MODELO E/RE 10 Publicado es España bajo licencia Creative Commons Reconocimiento 3.0 (CC BY).
http://creativecommons.org/licenses/by/3.0/es/deed.es o (1:N): si, para una de las entidades puede haber un número ilimitado de ocurrencias de la otra. o (N:M): si, para cada una de las entidades puede haber un número ilimitado de ocurrencias de la otra. Además, cuando interviene más de una ocurrencia en una interrelación, el arco de unión con dicha entidad es orientado (punta de flecha). MARIDO MUJER casarse 1:1 LIBRO EJEMPLAR tiene 1:N ALUMNO PROFESOR tiene M:N CICLOS FORMATIVOS Asir MODULO: BASE DE DATOS BLOQUE II: DISEÑO LOGICO DE B.D.MODELO E/RE 11 Publicado es España bajo licencia Creative Commons Reconocimiento 3.0 (CC BY).
http://creativecommons.org/licenses/by/3.0/es/deed.es Atributos en las relaciones Las interrelaciones también pueden tener atributos. Por ejemplo, la interrelación imposición entre CLIENTE y CUENTA BANCARIA posee el atributo fecha que especifica la fecha en la que un cliente hace una imposición en una cuenta. Otro ejemplo, la interrelación TRABAJA entre EMPLEADO y PROYECTO posee el atributo FUNCIÓN que especifica la función que ejerce un empleado en un determinado proyecto (por ejemplo, analista). 1.1.3.1. Interrelaciones débiles Son aquellas que asocian a una entidad débil con una regular. En este caso las cardinalidades de la entidad regular son (1,1).
Dentro de este tipo de interrelación se puede hablar de: Dependencia en existencia CLIENTE CUENTA hace imposición M:N (1,N) (1,N) DNI Nombre Número_cuenta fecha CICLOS FORMATIVOS Asir MODULO: BASE DE DATOS BLOQUE II: DISEÑO LOGICO DE B.D.MODELO E/RE 12 Publicado es España bajo licencia Creative Commons Reconocimiento 3.0 (CC BY). http://creativecommons.org/licenses/by/3.0/es/deed.es Cuando las ocurrencias de una entidad débil no pueden existir si desaparece la ocurrencia de la entidad regular de la cual depende. Por ejemplo, la interrelación DEPENDE es dependiente en existencia ya que los datos acerca de los familiares de un empleado sólo tendrán sentido si éste permanece en la base de datos.
Se indica añadiendo la etiqueta E al rombo que representa la interrelación débil con dependencia de existencia. Dependencia en identificación Cuando, además de ser dependiente en existencia, las ocurrencias de la entidad débil no se pueden identificar sólo mediante los atributos de la misma, sino que se tiene que añadir la clave de la entidad de la cual dependen. Por ejemplo, la interrelación TIENE que asocia la entidad regular LIBRO con la entidad débil EJEMPLAR es dependiente en identificación ya que un ejemplar determinado, además de depender en existencia de LIBRO, está identificado con la calve del libro del cual depende más su código propio.
Se indica añadiendo la etiqueta ID al rombo que representa la interrelación débil con dependencia de identificación. EMPLEADO FAMILIAR depende 1:N (1,1) (0,N) E LIBRO EJEMPLAR tiene 1:N (1,1) (1,N) ID CICLOS FORMATIVOS Asir MODULO: BASE DE DATOS BLOQUE II: DISEÑO LOGICO DE B.D.MODELO E/RE 13 Publicado es España bajo licencia Creative Commons Reconocimiento 3.0 (CC BY). http://creativecommons.org/licenses/by/3.0/es/deed.es 1.1.3.2. Interrelaciones exclusivas Una interrelación es exclusiva cuando cada ocurrencia de una entidad sólo pertenece a una interrelación de todas aquellas en las que participa.
Por ejemplo, supongamos que en una biblioteca, los artículos se encuentran disponibles de dos formas, aquellos que se publican en revistas y aquellos que aparecen en recopilaciones. En este caso vemos que las interrelaciones PUBLICA y APARECE son exclusivas, ya que un ARTÍCULO o bien se publica en una revista o bien aparece en una recopilación. Implementación con trigger Se representa por medio de un arco entre ambas interrelaciones. ARTICULO REVISTA RECOPILACIÓN publica aparece (1,N) 1:N 1:N (1,N) (0,1) (0,1) CICLOS FORMATIVOS Asir MODULO: BASE DE DATOS BLOQUE II: DISEÑO LOGICO DE B.D.MODELO E/RE 14 Publicado es España bajo licencia Creative Commons Reconocimiento 3.0 (CC BY).
http://creativecommons.org/licenses/by/3.0/es/deed.es 1.1.4. Jerarquía de entidades Se representa por medio de un arco entre ambas interrelaciones. Jerarquía de entidades Pertenece al modelo Entidad Relación Extendido. La descomposición de entidades en varios subtipos es necesaria en la modelización de la BD, la interrelación que se establece entre un supertipo de entidad y sus subtipos corresponde a la notación "ES UN" ó "ES UN TIPO DE" (IS-A). El "es un" se representa mediante un triángulo invertido. Ejemplo.
Consideramos las entidades EMPLEADO, VENDEDOR, ANALISTA, CLIENTE donde el empleado de una determinada empresa puede ser VENDEDOR o ANALISTA y los vendedores poseen una serie de clientes. CARACTERÍSTICAS DEL "ES UN" Las cardinalidades serán siempre (1,1) en el supertipo y (1:1) ó (0:1) en los subtipos, puesto que toda ocurrencia de un subtipo es una ocurrencia del supertipo, lo contrario no es cierto. EMPLEADO ANALISTA VENDEDOR CLIENTE posee N:1 (0,1) (0,1) (1,1) is a DNI Nombre Sueldo Comisión Método Categoría Nombre DNI CICLOS FORMATIVOS Asir MODULO: BASE DE DATOS BLOQUE II: DISEÑO LOGICO DE B.D.MODELO E/RE 15 Publicado es España bajo licencia Creative Commons Reconocimiento 3.0 (CC BY).
http://creativecommons.org/licenses/by/3.0/es/deed.es Los atributos comunes se asignan al supertipo y los atributos específicos se asocian al subtipo correspondiente, es decir, todo atributo del supertipo pasa a ser un atributo de los subtipos. La especialización de un tipo de entidad es un conjunto de subtipos que pueden ser EXCLUSIVOS o INCLUSIVOS. Representaciones gráficas del ES-UN: Representaciones gráficas del ES-UN con exclusividad: Hay varios tipos de especialización que dependen de dos parámetros: si es inclusiva o exclusiva y si es total o parcial. Exclusiva, (sin solapamiento), una ocurrencia de la entidad superconjunto es una ocurrencia de una y sólo una entidad subconjunto.
Se representa gráficamente con un arco que une todas las líneas que salen de la relación. is a is a is a is a is a CICLOS FORMATIVOS Asir MODULO: BASE DE DATOS BLOQUE II: DISEÑO LOGICO DE B.D.MODELO E/RE 16 Publicado es España bajo licencia Creative Commons Reconocimiento 3.0 (CC BY). http://creativecommons.org/licenses/by/3.0/es/deed.es Inclusiva, (con solapamiento), una ocurrencia de la entidad superconjunto puede ser una ocurrencia de varias entidades subconjunto a la vez. Se representa gráficamente sin poner el arco. Total, (obligatoria), una ocurrencia de la entidad superconjunto obligatoriamente debe ser una ocurrencia de alguna entidad subconjunto.
Se representa colocando un círculo sobre la relación. Parcial, (opcional), una ocurrencia de la entidad superconjunto puede no ser una ocurrencia de ninguna entidad subconjunto. Se representa sin el círculo. En síntesis, las relaciones jerárquicas pueden ser (mediante ejemplos): Exclusiva total: en función de la edad, se subdivide la entidad persona en niño, adulto y anciano. Es exclusiva porque un niño no es a la vez un adulto ni un anciano. Es total porque una persona seguro que es una de las tres. Exclusiva parcial: una enfermedad se cataloga como vírica o bacteriana. Es exclusiva porque si es vírica no puede ser bacteriana.
Es parcial porque existen enfermedades que no son ni víricas ni bacterianas. PERSONA ANCIANO NIÑO is a ADULTO edad CICLOS FORMATIVOS Asir MODULO: BASE DE DATOS BLOQUE II: DISEÑO LOGICO DE B.D.MODELO E/RE 17 Publicado es España bajo licencia Creative Commons Reconocimiento 3.0 (CC BY). http://creativecommons.org/licenses/by/3.0/es/deed.es Inclusiva total: un mamífero en función del medio en el que vive se puede catalogar como acuático, volador o terrestre. Es inclusiva porque hay mamíferos que se ubican en varias de las entidades subconjunto a la vez. Es total porque no existe ningún mamífero que no se pueda clasificar en alguno de los subconjuntos.
Inclusiva parcial: en función de la ocupación que tenga una persona, se la puede catalogar como estudiante o trabajador. Es inclusiva porque una persona puede ser estudiante y trabajador a la vez. Es parcial, porque existen personas que no son ni estudiantes ni trabajadores. ENFERMEDAD BACTERIANA VIRICA is a tipo MAMIFERO TERRESTRE ACUÁTICO is a VOLADOR ambiente PERSONA TRABAJADOR ESTUDIANTE is a ocupación Implementación con trigger CICLOS FORMATIVOS Asir MODULO: BASE DE DATOS BLOQUE II: DISEÑO LOGICO DE B.D.MODELO E/RE 18 Publicado es España bajo licencia Creative Commons Reconocimiento 3.0 (CC BY). http://creativecommons.org/licenses/by/3.0/es/deed.es 1.1.1.
Dominio El conjunto de valores posibles que puede tomar un atributo se llama dominio. Un dominio tiene un nombre y una existencia propia con independencia de los atributos. Por ejemplo, podemos definir un dominio de NACIONALIDADES, cuyos valores sean española, francesa, italiana, norteamericana, etc… El atributo nacionalidad de AUTOR estará definido sobre este dominio y tomará de él sus valores. 1.1.2. Construcción de un esquema E/R El proceso de construcción de un esquema E/R parte del análisis del Universo de Discurso (o la realidad empresarial), analizando listados, pantallas, informes, normativas, y realizando un conjunto de entrevistas a varios niveles de la empresa.
Posteriormente se elabora un esquema percibido, expresado en lenguaje natural, que facilita la obtención del esquema conceptual. Tras ello se "interpreta" el lenguaje natural y se convierte en elementos del modelo E/R (entidades, atributos e interrelaciones). No existen reglas que nos digan qué elemento va a ser una entidad o cual otro una interrelación. Pero sí se pueden enunciar unos principios generales que, junto al buen criterio del diseñador, puedan ayudar a elaborarlo: Un sustantivo (nombre común) que actúa como sujeto o complemento directo en una frase es, en general, una entidad, aunque podría ser un atributo.
Por ejemplo, en la frase "Los CICLOS FORMATIVOS Asir MODULO: BASE DE DATOS BLOQUE II: DISEÑO LOGICO DE B.D.MODELO E/RE 19 Publicado es España bajo licencia Creative Commons Reconocimiento 3.0 (CC BY). http://creativecommons.org/licenses/by/3.0/es/deed.es empleados trabajan en proyectos", existen dos posibles entidades: EMPLEADO y PROYECTO. Los nombres propios suelen identificar ocurrencias de una entidad. Por ejemplo, Juan Manuel es una ocurrencia de EMPLEADO. Un verbo es una interrelación. Por ejemplo, en la frase anterior "trabajar" indica una interrelación entre las dos entidades EMPLEADO y PROYECTO.
Una preposición o frase preposicional entre dos nombres suele ser una interrelación, o también puede establecer la asociación entre una entidad y sus atributos. Por ejemplo, al decir "el departamento del empleado", estamos indicando la interrelación entre las entidades DEPARTAMENTO y EMPLEADO, mientras que si decimos " la dirección del empleado", estamos asociando el atributo DIRECCIÓN a la entidad EMPLEADO. CICLOS FORMATIVOS ASIR BLOQUE II: DISEÑO LOGICO DE B.D. Paso del diagrama E/R al modelo relacional. Tema 3 1 Publicado es España bajo licencia Creative Commons Reconocimiento 3.0 (CC BY). http://creativecommons.org/licenses/by/3.0/es/deed.es 1.
INTRODUCCIÓN .................................................................................................1 2. TERMINOLOGÍA DEL MODELO RELACIONAL........................................................2 3. TRADUCCION DEL MODELO E-R A ESQUEMAS RELACIONALES.........................
12 TRANSFORMACIÓN DE TIPOS DE INTERRELACIÓN UNO A UNO .......................................12 TRANSFORMACIÓN DE TIPOS DE INTERRELACIÓN UNO A VARIOS...................................14 TRANSFORMACIÓN DE TIPOS DE INTERRELACIÓN VARIOS A VARIOS..............................15 TRANSFORMACIÓN DE TIPOS DE INTERRELACION REFLEXIVA .........................................16 TRANSFORMACIÓN GENERALIZACIONES ........................................................................17 Transformación de interrelaciones ternarias........................................................... 19 3.4.1. Conectividad M:N:P ......................................................................................
20 3.4.3. Conectividad N:1:1........................................................................................ 20 3.4.2. Conectividad M:N:1....................................................................................... 21 1. INTRODUCCIÓN En 1970 Codd publicó un trabajo proponiendo un nuevo modelo de datos llamado relacional.
Está basado en conceptos muy sencillos teniendo asociada la teoría de normalización de relaciones que tiene por objeto la eliminación de los comportamientos anómalos de las relaciones durante los procesos de manejo de la información El modelo relacional persigue los siguientes objetivos: – Independencia física: El modo cómo se almacenan los datos no debe influir en su manipulación lógica y, por tanto, los usuarios que acceden a esos datos no han de modificar sus programas por cambios en el almacenamiento físico.
– Independencia lógica: Añadir, eliminar o modificar cualquier elemento de la BD no debe repercutir en los programas y/o usuarios que están accediendo a subconjuntos parciales de los mismos (vistas). – Flexibilidad: Ofrecer a cada usuario los datos de la forma más adecuada a la correspondiente aplicación. CICLOS FORMATIVOS ASIR BLOQUE II: DISEÑO LOGICO DE B.D. Paso del diagrama E/R al modelo relacional. Tema 3 2 Publicado es España bajo licencia Creative Commons Reconocimiento 3.0 (CC BY).
http://creativecommons.org/licenses/by/3.0/es/deed.es – Uniformidad: Las estructuras lógicas de los datos presentan un aspecto uniforme (tablas), lo que facilita la concepción y manipulación de la BD por parte de los usuarios. – Sencillez: Las características anteriores, así como unos lenguajes de usuario muy sencillos, producen como resultado que el modelo relacional (MR) sea fácil de comprender y de utilizar por parte del usuario final. Propone una representación de la información que: - Origine esquemas que representen fielmente la información, los objetos y relaciones entre ellos existentes en el dominio del problema.
- Pueda ser entendida fácilmente por los usuarios que no tienen una preparación previa en éste área. - Haga posible ampliar el esquema de la base de datos sin modificar la estructura lógica existente y, por tanto, sin modificar los programas de aplicación. - Permita la máxima flexibilidad en la formulación de los interrogantes previstos, y no previstos, sobre la información mantenida en la Base de Datos. 2. TERMINOLOGÍA DEL MODELO RELACIONAL La estructura básica del Modelo es la RELACIÓN y se puede representar en forma de tabla de dos dimensiones (cuidado: no es una tabla).
Una relación tiene un nombre, un conjunto de atributos que representan sus propiedades y un conjunto de tuplas que incluyen los valores que cada uno de los atributos toma para cada elemento de la relación. Como se ha dicho, una relación se representa mediante una tabla bidimensional (las columnas son los atributos de la relación y las filas son las tuplas). La relación debe cumplir las siguientes condiciones: - Debe tener un solo tipo de fila, cuyo formato queda definido por el esquema de la relación, por lo tanto todas las filas tienen las mismas columnas. CICLOS FORMATIVOS ASIR BLOQUE II: DISEÑO LOGICO DE B.D. Paso del diagrama E/R al modelo relacional.
Tema 3 3 Publicado es España bajo licencia Creative Commons Reconocimiento 3.0 (CC BY). http://creativecommons.org/licenses/by/3.0/es/deed.es - Cada fila debe ser única y no pueden existir filas duplicadas. - Cada columna debe ser única y no pueden existir columnas duplicadas. - Cada columna debe estar identificada por un nombre específico. - El valor de una columna para una fila debe ser único, así, no pueden existir múltiples valores en una posición de una columna. - Los valores de una columna deben al dominio que representa, y es posible que un mismo dominio se utilice para definir los valores de varias columnas.
El DOMINIO es el conjunto de todos los posibles valores para una o más columnas (o atributos) de una relación. Por tanto, los valores contenidos en un atributo (o columna) deben estar entre un máximo y mínimo predefinido por el dominio. Pueden distinguirse dos tipos de dominios diferentes: - Dominios generales o continuos: aquellos que contienen todos los posibles valores entre un máximo y un mínimo predefinido. Ejemplos: DNI: todos los números enteros y positivos de 8 dígitos. Peso de material: todos los números reales y positivos. Saldo de una cuenta: todos los números reales, positivos y negativos.
- Dominios restringidos o discretos: aquellos que contienen ciertos valores específicos entre un máximo y un mínimo predefinido. Ejemplos: Estado civil: compuesto por soltero, casado, viudo y divorciado. Provincia: una de las provincias españolas. En una relación, a las filas se le denomina TUPLAS, y a las columnas ATRIBUTOS. Dicho de un modo formal, un atributo es la interpretación de un determinado dominio en una relación, es decir, el papel que juega en la misma. Un atributo y un dominio pueden llamarse igual, pero: – Un atributo está siempre asociado a una relación, mientras que un dominio tiene existencia propia con independencia de las relaciones.
– Un atributo representa una propiedad de una relación. – Un atributo toma valores de un dominio. CICLOS FORMATIVOS ASIR BLOQUE II: DISEÑO LOGICO DE B.D. Paso del diagrama E/R al modelo relacional. Tema 3 4 Publicado es España bajo licencia Creative Commons Reconocimiento 3.0 (CC BY). http://creativecommons.org/licenses/by/3.0/es/deed.es – Varios atributos distintos (de la misma o de diferentes relaciones) pueden tomar sus valores del mismo dominio. Se denomina GRADO al número de atributos que la forma. Se llama CARDINALIDAD al número de tuplas que contiene. Esta sería una relación con un determinado Nombre. Cada una de las filas (por debajo de Atributo i) se llamará tupla.
Ejemplo: COD_MATRICULA NOMBRE CIUDAD COD_GRUPO 101 José Salamanca 11 102 Pepe Ciudad Real 11 203 Maria Madrid 23 500 Ignacio Barcelona 54 054 Leticia Munich -- El ejemplo muestra una relación llamada ALUMNO, que consta de los atributos Cod_matrícula, Nombre, Ciudad y Cod_grupo (nombres de las columnas de la tabla). Cada fila de la tabla muestra una tupla correspondiente a los datos de un alumno. El dominio de Cod_matricula sería "códigos" formado por un conjunto de cadenas de longitud 3 caracteres. Atributo 1 Atributo 2 ..... Atributo N xxxxxxxxx Xxxxxxxxx ................. Xxxxxxxxx Xxxxxxxxx Xxxxxxxxx ................. Xxxxxxxxx Xxxxxxxxx Xxxxxxxxx .................
Xxxxxxxxx Xxxxxxxxx Xxxxxxxxx ................. Xxxxxxxxx CICLOS FORMATIVOS ASIR BLOQUE II: DISEÑO LOGICO DE B.D. Paso del diagrama E/R al modelo relacional. Tema 3 5 Publicado es España bajo licencia Creative Commons Reconocimiento 3.0 (CC BY). http://creativecommons.org/licenses/by/3.0/es/deed.es CICLOS FORMATIVOS ASIR BLOQUE II: DISEÑO LOGICO DE B.D. Paso del diagrama E/R al modelo relacional. Tema 3 6 Publicado es España bajo licencia Creative Commons Reconocimiento 3.0 (CC BY).
http://creativecommons.org/licenses/by/3.0/es/deed.es El modelo relacional debe satisfacer una serie de reglas de integridad mediante las cuales se garantiza la consistencia de la información que pueda ser manejada: - En una relación no puede haber 2 tuplas iguales (obligatoriedad de clave primaria). - El orden de las tuplas y el de atributos no es relevante. (Aunque es recomendable que las tuplas estén en orden tomando como referencia un atributo, normalmente el primero, que deberá coincidir con lo que llamamos clave de la relación). - Cada atributo sólo puede tomar un único valor del dominio sobre el cual está definido.
- Ningún atributo que forme parte de la clave primaria de una relación puede tomar un valor nulo (regla de integridad de entidad o de clave). CICLOS FORMATIVOS ASIR BLOQUE II: DISEÑO LOGICO DE B.D. Paso del diagrama E/R al modelo relacional. Tema 3 7 Publicado es España bajo licencia Creative Commons Reconocimiento 3.0 (CC BY). http://creativecommons.org/licenses/by/3.0/es/deed.es - Se pueden imponer , en teoría, otra serie de restricciones que garanticen la integridad del modelo y por lo tanto de la información almacenada en la BdD, restricciones concernientes con: a) Los valores permitidos para los atributos que forman parte de las relaciones existentes en el esquema.
Por ejemplo, valor máximo y mínimo, lista de valores, etc... b) Condiciones que determinan el valor que pueden tomar los atributos. Estas condiciones pueden definirse en base a diferentes predicados: en función del valor de otros atributos de la misma o diferente relación, o al estado de la base de datos, o en base al usuario, etc... CLAVES. En una relación, es necesario poder determinar una tupla concreta, lo cual es posible mediante la clave. Clave es un atributo o conjunto de atributos cuyos valores distinguen unívocamente una tupla específica de una tabla o relación.
Cada una de las condiciones de una tabla relacional o relación es que no pueden existir filas duplicadas, ello implica que siempre tiene que existir al menos una clave, que en el peor de los casos estará formada por todos los atributos. La clave se debe buscar a través de todos los posibles valores (dominio) de los atributos, y no entre los valores de unas tuplas concretas. Si una tabla dispone de varias claves, a éstas se le denominan CLAVES CANDIDATAS, puesto que más adelante entre todas ellas tendremos que elegir una que será la que por excelencia identifique la tupla. A esta clave se le denomina CLAVE PRINCIPAL o primaria y al resto CLAVES ALTERNATIVAS o secundarias.
Los atributos que pertenecen a la clave primaria se denominan atributos primarios y el resto atributos no primarios o secundarios. Ejemplo: DNI NOMBRE DIRECCIÓN CIUDAD 493 Pedro C/ Col, 9 Jaén 181 Luis C/ Pez, 7 Madrid 830 María C/ Paz, 12 Madrid 341 Ana Pza. Mayor, 5 Salamanca CICLOS FORMATIVOS ASIR BLOQUE II: DISEÑO LOGICO DE B.D. Paso del diagrama E/R al modelo relacional. Tema 3 8 Publicado es España bajo licencia Creative Commons Reconocimiento 3.0 (CC BY). http://creativecommons.org/licenses/by/3.0/es/deed.es 679 Juan C/ Sol, 5 Madrid 911 Pilar C/ Mar, 51 Sevilla En personal la clave es DNI, puesto que cualquier valor del dominio de dicho atributo identifica a una única tupla.
Se denomina CLAVE AJENA a aquel atributo o conjunto de atributos que en la tabla donde se encuentran no son clave, y sus valores se corresponden con la clave principal de la misma u otra tabla Los mecanismos que proporciona el modelo relacional para recoger restricciones de usuario son las siguientes: a) Restricción de clave primaria (PRIMARY KEY) permite declarar un atributo o conjunto de atributos como la clave primaria de una relación (identifica unívocamente cada tupla de la relación). En el ejemplo de la relación ALUMNO, la clave primaria sería Cod_Matrícula. CICLOS FORMATIVOS ASIR BLOQUE II: DISEÑO LOGICO DE B.D. Paso del diagrama E/R al modelo relacional.
Tema 3 9 Publicado es España bajo licencia Creative Commons Reconocimiento 3.0 (CC BY). http://creativecommons.org/licenses/by/3.0/es/deed.es b) La restricción de unicidad (UNIQUE) nos permite definir claves alternativas (los valores de uno o varios atributos no pueden repetirse en diferentes tuplas de una relación) c) La restricción de obligatoriedad (NOT NULL) permite declarar si uno o varios atributos de una relación deben tomar siempre un valor, es decir, no pueden tomar valores nulos.
d) La restricción de clave ajena (FOREIGN KEY), también denominada integridad referencial, se usa para, mediante claves ajenas (conjunto de atributos en una relación que es una clave primaria en otra o la misma relación) enlazar relaciones de la base de datos. La integridad referencial nos indica que los valores de la clave ajena en la relación hijo deben corresponderse con los valores de la clave primaria en la relación padre o bien ser nulos si se admiten nulos. Los atributos que son clave ajena en una relación no necesitan tener los mismos nombres que los atributos de la clave primaria con la cual ellos se corresponden CICLOS FORMATIVOS ASIR BLOQUE II: DISEÑO LOGICO DE B.D.
Paso del diagrama E/R al modelo relacional. Tema 3 10 Publicado es España bajo licencia Creative Commons Reconocimiento 3.0 (CC BY). http://creativecommons.org/licenses/by/3.0/es/deed.es Además, es necesario determinar las consecuencias de ciertas operaciones (borrado y modificación) realizadas sobre tuplas de la relación referenciada, es decir, las opciones de borrado y modificación sobre claves ajenas.
Las posibilidades para una operación de actualización (borrado o modificación) son: Borrado / modificación en cascada (CASCADE): el borrado (o modificación) de una tupla en la relación padre ocasiona un borrado (o modificación) de todas las tuplas relacionadas en la relación hija (tuplas cuya clave ajena coincida con el valor de la clave primaria de la tupla eliminada o modificada en la relación padre). Así, en el ejemplo anterior de EMPLEADOS y DEPARTAMENTOS, el borrado de un departamento supone el borrado de todos los empleados que trabajan en él.
Borrado / modificación restringido (RESTRICT): en este caso si existen tuplas en la relación hija relacionadas con la tupla de la relación padre sobre la que se realiza la operación, entonces no se permitirá llevar a cabo dicha operación. En el ejemplo, no se podría borrar un departamento que tenga empleados que trabajen en él. Borrado / modificación con puesta a nulos (SET NULL): esta posibilidad nos permite poner el valor de la clave ajena referenciada a NULL cuando se produce el borrado o modificación de una tupla en la relación padre. En el ejemplo, el borrado de un departamento implicaría que todos los empleados que trabajan en él pasarán a contener NULL en el atributo DEPARTAMENTO.
Evidentemente, esta opción está permitida siempre y cuando la clave ajena admita nulas. Borrado / modificación con puesta a un valor por defecto (SET DEFAULT): su funcionamiento es similar al caso anterior, con la excepción de que el valor al que se ponen las claves ajenas referenciadas es un valor por defecto que se habrá especificado en la definición de la tabla correspondiente.
En este caso, en el ejemplo anterior, cuando se borra un determinado departamento es posible asignar sus empleados a un departamento ficticio (que debe encontrarse evidentemente presente en la relación DEPARTAMENTO) Las opciones de borrado y modificación pueden ser distintas para una determinada clave ajena de una relación; por ejemplo, es posible definir el borrado en cascada y la modificación restringida. CICLOS FORMATIVOS ASIR BLOQUE II: DISEÑO LOGICO DE B.D. Paso del diagrama E/R al modelo relacional. Tema 3 11 Publicado es España bajo licencia Creative Commons Reconocimiento 3.0 (CC BY).
http://creativecommons.org/licenses/by/3.0/es/deed.es e) Restricciones de Verificación (CHECK): En algunos casos puede ocurrir que sea necesario especificar una condición que deben cumplir los valores de determinados atributos de una relación de la BdD aparte de las restricciones ya vistas de clave primaria, unicidad, obligatoriedad y clave ajena. Para ello se definen las restricciones de verificación que, al igual que las ya estudiadas, siempre llevan implícitas un rechazo en caso de que no se cumpla la condición especificada y que también se comprueban ante una inserción, borrado o modificación.
Como las restricciones de verificación siempre van ligadas a un único elemento de la BdD (generalmente una relación) no es necesario que tengan un nombre. Por ejemplo, para la relación EMPLEADO podría definirse una restricción sobre el atributo "Salario" que estableciera que "el rango del salario del empleado puede oscilar entre las 700 y 100. Así, si se va a insertar un empleado con un sueldo inferior a 7000 la operación se rechazaría. f) Aserciones (ASSERTION): Otro tipo de restricción, que generaliza al anterior, lo forman las aserciones en las que la condición se establece sobre elementos de distintas relaciones (por ello debe tener un nombre que la identifique).
Su funcionamiento es idéntico al de las restricciones de verificación. La única diferencia consiste en que las restricciones de verificación o CHECK tienen como ámbito una única relación. En el ejemplo, se podría especificar una aserción para la restricción que establezca que "no hay ningún empleado que trabaje en el departamento de contabilidad que gane más de 1200euros". En las restricciones que involucran algún tipo de subconsulta en la condición (por ejemplo, si se usa alguna función de agregación sobre las tuplas de una relación) puede ocurrir que puedan implementarse como un CHECK.
Sin embargo, es necesario estudiar que la restricción no pueda ser violada en ningún caso por cualquiera de las operaciones que puedan realizarse sobre el esquema. Por ello, a veces es necesario implementarlas como una aserción. g) Disparadores (TRIGGER): Por último, a veces puede interesar especificar una acción distinta del rechazo cuando no se cumple una determinada restricción. En este caso, se recurre al uso de los triggers que nos permiten además de indicar una condición, especificar la acción que queremos se lleve a cabo si la condición se hace verdadera.
Los disparadores pueden interpretarse como reglas de tipo evento-condición-acción (ECA) que pueden interpretarse como reglas que especifican que cuando se produce un evento, si se cumple una condición, entonces se realiza una determinada acción. Los triggers no están soportados en CICLOS FORMATIVOS ASIR BLOQUE II: DISEÑO LOGICO DE B.D. Paso del diagrama E/R al modelo relacional. Tema 3 12 Publicado es España bajo licencia Creative Commons Reconocimiento 3.0 (CC BY). http://creativecommons.org/licenses/by/3.0/es/deed.es ciertas versiones de SQL, sin embargo, existen productos relacionales que los soportan aunque con diferencias en el modo de funcionamiento.
En el ejemplo, se podría definir un trigger que "informará al administrador de la BdD cuando haya un empleado que gane más de 2500 euros y que trabaje en el departamento de Marketing". 3. TRADUCCION DEL MODELO E-R A ESQUEMAS RELACIONALES El primer punto a considerar es que los atributos existentes en el modelo conceptual solo pueden tomar valores atómicos. Transformación de los tipos de entidad Toda entidad se trasforma en una tabla Todo atributo se transforma en una columna de la tabla. El identificador único de la entidad se convierte en clave primaria. TRANSFORMACIÓN DE TIPOS DE INTERRELACIÓN UNO A UNO (Se tienen en cuenta las cardinalidades mínimas) 1.
Los dos tipos participan con cardinalidad mínima (1,1) normalmente se transforman en una única tabla, o también se puede propagar la clave de cualquiera de ellas a la tabla resultante. opción 1 EMPLEADO:COD_EMPLE(pk), nombre, CODG_-P(fk) PUESTODETRABAJO:CODG_-P(pk),OFICINA opción 2 EMPLEADO:COD_EMPLE(pk), nombre PUESTODETRABAJO:CODG_-P(pk),OFICINA,COD_EMPLE(fk) CICLOS FORMATIVOS ASIR BLOQUE II: DISEÑO LOGICO DE B.D. Paso del diagrama E/R al modelo relacional. Tema 3 13 Publicado es España bajo licencia Creative Commons Reconocimiento 3.0 (CC BY). http://creativecommons.org/licenses/by/3.0/es/deed.es Opción 3 EMPLEADO:COD_EMPL(pk),NOMBRE,OFICINA,CODG-P Se elige como pk una de las dos. 2.
Alguno de los dos tipos participan de forma parcial.(0,1) El identificador de la tabla que participa parcialmente pasara como atributo a la otra tabla. En este caso el atributo podrá tomar valores nulos. EMPLEADO(NIF, APELLIDOS) ELECTODOMESTICO(CODIGO_ELECTRODOMESTICO, MARCA, NIF) NIF SE PROPAGA 3. Ambos tipos participan de forma parcial. CICLOS FORMATIVOS ASIR BLOQUE II: DISEÑO LOGICO DE B.D. Paso del diagrama E/R al modelo relacional. Tema 3 14 Publicado es España bajo licencia Creative Commons Reconocimiento 3.0 (CC BY).
http://creativecommons.org/licenses/by/3.0/es/deed.es Cada una de ellas se trasforma en una tabla pasando cada una de los identificadores a cada una de las tablas EMPLEADO(NIF, APELLIDOS, CODIGO_ELECTRODOMESTICO) ELECTODOMESTICO(CODIGO_ELECTRODOMESTICO, MARCA, NIF) Se construye una nueva tabla, cuyos identificadores serán los identificadores de ambas tablas.
EMPLEADO(NIF, APELLIDOS) ELECTODOMESTICO(CODIGO_ELECTRODOMESTICO, MARCA) EMLEADO_ELECTRO(NIF, CODIGO_ELECTRODOMSTICO) TRANSFORMACIÓN DE TIPOS DE INTERRELACIÓN UNO A VARIOS PROPAGAR LA CLAVE: Si ambos participan de forma total(1,1), o el tipo de entidad que interviene con cardinalidad máxima participa de forma parcial(0,N) entonces cada tipo de entidad se transforma en una tabla y el identificador que participa con cardinalidad máxima uno pasa a formar parte de la tabla que participa con cardinalidad máxima n, este atributo es definido como clave foránea(FK) de esta tabla manteniendo la relación con la otra tabla, si el tipo de interrelación tuviera atributos estos pasaran tb a formar parte de la tabla correspondiente al tipo de entidad que participa con cardinalita máxima CICLOS FORMATIVOS ASIR BLOQUE II: DISEÑO LOGICO DE B.D.
Paso del diagrama E/R al modelo relacional. Tema 3 15 Publicado es España bajo licencia Creative Commons Reconocimiento 3.0 (CC BY). http://creativecommons.org/licenses/by/3.0/es/deed.es EDITORIAL(NOMBRE_EDITORIAL, DIRECCION..) REVISTA(TITULO, EDITOR..NOMBRE_EDITORIAL) TRANSFORMAR LA RELACION EN UNA TABLA: Se crea una nueva tabla cuando la cardinalidad es opcional (0,1) y (0,N),La clave de esa nueva tabla es de la entidad el lado muchos .Se hace como si se tratara de una relación N:M TRANSFORMACIÓN DE TIPOS DE INTERRELACIÓN VARIOS A VARIOS En esta clase de interrelaciones el proceso de transformación no depende de la cardinalidad mínima siempre se aplica la misma regla.
Cada tipo de entidad se transforma en una tabla y se genera una nueva tabla para representar el atributos asociados que a relación tenga. Transformación de interrelaciones con atributos SOCIO (COD-S,....) LIBRO (COD-L, ....) PRESTA (COD-S, COD-L, F-INI, F-FIN) N:M SOCIO presta LIBRO Fec-fin fec-ini CICLOS FORMATIVOS ASIR BLOQUE II: DISEÑO LOGICO DE B.D. Paso del diagrama E/R al modelo relacional. Tema 3 16 Publicado es España bajo licencia Creative Commons Reconocimiento 3.0 (CC BY).
http://creativecommons.org/licenses/by/3.0/es/deed.es CUIDADO CON LA FECHA!!!!EXPLICAR TRANSFORMACIÓN DE TIPOS DE INTERRELACION REFLEXIVA CASOS: 1.- CARDINALIDAD MÁXIMA 1:N O 1:1 2.- CARDINALIDAD MÁXIMA EN AMBOS N En el segundo caso se trata como en la interrelación varios a varios. 1.1cuando la cardinalidad mínima es uno EMPLEADO ----JEFE (1,1) (1:N) Se genera una tabla para el tipo de entidad y en esa tabla se añade como clave ajena el identificador del tipo entidad.
EMPLEADO(DNI_EMPLEADO, NOMBRE, APELLIDO…DNI _EMPLEADO _JEFE) 1.2cuando la cardinalidad mínima es cero o uno (PUEDE HABER EMPEADOS QUE NO TENGAN NINGUN JEFE ASIGNADO) EMPLEADO (DNI_EMPLEADO, NOMBRE, APELLIDO…) EMPLEADO_JEFE(DNI_EMPLEADO , DNI_JEFE…..) RESUMIDO Transformación de la interrelación 1:N ó N:1 reflexiva: 1ª Sol: TEMA (COD-TEMA,.........., COD-TEM-SUP) 2ª Sol: Cuando existen muchos valores nulos las interrelaciones 1:N se convierten a N:M con atributos propios. TEMA (COD-TEMA,....) CONSTA (COD-TEMA-S, COD-TEMA) .- CARDINALIDAD MÁXIMA EN AMBOS N se crea una nueva tabla, donde la clave sera la unión de las dos fk CICLOS FORMATIVOS ASIR BLOQUE II: DISEÑO LOGICO DE B.D.
Paso del diagrama E/R al modelo relacional. Tema 3 17 Publicado es España bajo licencia Creative Commons Reconocimiento 3.0 (CC BY). http://creativecommons.org/licenses/by/3.0/es/deed.es TRANSFORMACIÓN GENERALIZACIONES Ejemplo:RELACION DE 1:1 1.- Eliminar el supertipo CICLOS FORMATIVOS ASIR BLOQUE II: DISEÑO LOGICO DE B.D. Paso del diagrama E/R al modelo relacional. Tema 3 18 Publicado es España bajo licencia Creative Commons Reconocimiento 3.0 (CC BY). http://creativecommons.org/licenses/by/3.0/es/deed.es 2.- Eliminar los subtipos CICLOS FORMATIVOS ASIR BLOQUE II: DISEÑO LOGICO DE B.D. Paso del diagrama E/R al modelo relacional.
Tema 3 19 Publicado es España bajo licencia Creative Commons Reconocimiento 3.0 (CC BY). http://creativecommons.org/licenses/by/3.0/es/deed.es Transformación de interrelaciones ternarias. La transformación de las interrelaciones ternarias presenta similitudes importantes con la transformación de las binarias M:N. No es posible representar la interrelación mediante claves foráneas, sino que es necesario usar una nueva relación. Para que la nueva relación refleje toda la información que modeliza la interrelación, es necesario que contenga las claves primarias de las tres entidades interrelacionadas y los atributos de la interrelación.
Así pues, la transformación de una interrelación ternaria siempre da lugar a una nueva relación, que tendrá como atributos las claves primarias de las tres entidades interrelacionadas y todos los atributos que tenga la interrelación. La clave primaria de la nueva relación depende de la conectividad de la CICLOS FORMATIVOS ASIR BLOQUE II: DISEÑO LOGICO DE B.D. Paso del diagrama E/R al modelo relacional. Tema 3 20 Publicado es España bajo licencia Creative Commons Reconocimiento 3.0 (CC BY). http://creativecommons.org/licenses/by/3.0/es/deed.es interrelación. A continuación analizaremos cuál debe ser la clave primaria de la nueva relación según la conectividad. 3.4.1.
Conectividad M:N:P Cuando la conectividad de la interrelación es M:N:P, la relación que se obtiene de su transformación tiene como clave primaria todos los atributos que forman las claves primarias de las tres entidades interrelacionadas. Ejemplo de transformación de una interrelación ternaria M:N:P Analizaremos la transformación con un ejemplo.La interrelación anterior se transforma en: ESTUDIANTE(est, ...) ASIGNATURA(asig, ...) SEMESTRE(sem, ...) EVALUACIÓN-SEMESTRAL(est, asig, sem, nota) Para identificar completamente la relación, la clave debe constar de la clave de estudiante, de la clave de asignatura y de la clave de semestre.
Si nos faltase una de las tres, la clave de la relación podría tener valores repetidos 3.4.3. Conectividad N:1:1 Cuando la conectividad de la interrelación es N:1:1, la relación que se consigue de su transformación tiene como clave primaria los atributos que forman la clave primaria de la entidad del lado N y los atributos que forman la clave primaria de cualquiera de las dos entidades que están conectadas con 1.Así pues, hay dos posibles claves para la relación que se obtiene. Son dos claves candidatas entre las cuales el diseñador deberá escoger la primaria.
Ejemplo de transformación de una interrelación ternaria N:1:1 1) Una posible transformación es la siguiente: HORA-SEMANAL(código-hora, ...) AULA(código-aula, ...) ASIGNATURA(asig, ...) CICLOS FORMATIVOS ASIR BLOQUE II: DISEÑO LOGICO DE B.D. Paso del diagrama E/R al modelo relacional. Tema 3 21 Publicado es España bajo licencia Creative Commons Reconocimiento 3.0 (CC BY).
http://creativecommons.org/licenses/by/3.0/es/deed.es CLASE (código-hora, código-aula, asig, duración) donde {código-hora} referencia HORA-SEMANAL, {código-aula} referencia AULA y {asig} referencia ASIGNATURA En este caso, la clave, a pesar de no incluir el atributo asig, identifica completamente la relación porque para una hora-semanal y un aula determinadas hay una única asignatura de la que se hace clase a esa hora y en esa aula.
2) La segunda transformación posible es esta otra: HORA-SEMANAL(código-hora, ...) AULA(código-aula, ...) ASIGNATURA(asig, ...) CLASE (código-hora, código-aula, asig, duración) donde {código-hora} referencia HORA-SEMANAL, {código-aula} referencia AULA y {asig} referencia ASIGNATURA Ahora la clave incluye el atributo asig y, en cambio, no incluye el atributo código-aula. La relación también queda completamente identificada porque, para una asignatura y hora-semanal determinadas, de aquella asignatura se da clase en una sola aula a aquella hora. 3.4.2.
Conectividad M:N:1 Cuando la conectividad de la interrelación es M:N:1, la relación que se obtiene de su transformación tiene como clave primaria todos los atributos que forman las claves primarias de las dos entidades de los lados de la interrelación etiquetados con M y con N. Ejemplo de transformación de una interrelación ternaria M:N:1. Esta interrelación refleja los destinos que se dan a los maestros de escuela en los diferentes cursos. El 1 que figura en el lado de escuela significa que un maestro no puede ser destinado a más de una escuela en un mismo curso.
El ejemplo de la figura se transforma en: MAESTRO(código-maestro, ...) CURSO(código-curso, ...) ESCUELA(código-esc, ...) DESTINO(código-maestro, código-curso, código-esc) donde {código-maestro} referencia MAESTRO {código-curso} referencia CURSO y {código-esc} referencia ESCUELA CICLOS FORMATIVOS ASIR BLOQUE II: DISEÑO LOGICO DE B.D. Paso del diagrama E/R al modelo relacional. Tema 3 22 Publicado es España bajo licencia Creative Commons Reconocimiento 3.0 (CC BY). http://creativecommons.org/licenses/by/3.0/es/deed.es No es necesario que la clave incluya código-esc para identificar completamente la relación.
Si se fijan un maestro y un curso, no puede haber más de una escuela de destino y, por lo tanto, no habrá claves repetidas.