EJERCICIOS DE REFUERZO SOLUCIONADOS MODELO ENTIDAD-RELACIÓN 1. En un supermercado hay productos organizados en categorías (frutas, ultramarinos, carnes, pescados, etc.). Cada producto pertenece a una única categoría, y puede haber categorías que todavía no tengan ningún producto asignado, sin embargo, no puede haber productos sin categoría. Calcula las participaciones de cada entidad en la relación Producto Pertenece Categoría 2. Las páginas web contienen controles de muchos tipos (campos de texto, listas desplegables, etc.). Si se quiere almacenar en una base de datos, cada página web, qué tipos de controles tiene, ¿qué participaciones habría que asignar? Justifica tu respuesta respondiendo a preguntas del tipo ¿un control, (por ejemplo, un cuadro de texto), en cuántas páginas puede estar como máximo y mínimo? 3. Los clientes pueden realizar pedidos a través de sus representantes de ventas. Indica las entidades que hay, relaciones y sus respectivas participaciones. 4. Hay multitud de notaciones distintas para realizar los diagramas entidad relación. Todas ellas, tratan de expresar los conceptos expuestos en este tema, pero de diferentes formas y con diferentes elementos gráficos. Busca en Internet otros tipos de notaciones para realizar diagramas entidad relación. Puedes buscar, entre otros, las notaciones de Martin, IDEFIX o Pies de cuero (C!rows root). 5. Calcula la cardinalidad de la siguiente relación ternaria: Hay que contestar a las siguientes preguntas: 1. ¿Cuántos autores puede tener un determinado libro publicado en una determinada editorial? 2. ¿Cuántos libros puede tener un determinado autor publicados en una determinada editorial? 3. ¿En cuántas editoriales puede un determinado autor publicar un mismo libro? Solución 6. Calcula la cardinalidad de las siguientes relaciones binarias: • Hombre está casado con Mujer, en una sociedad monogámica. 1:1 • Hombre está casado con Mujer, en una sociedad machista poligámica. 1:N • Hombre está casado con Mujer, en una sociedad poligámica liberal. N:M • Pescador pesca Pez. 1:N • Arquitecto diseña Edificios. 1:N • Piezas forman Producto. N:M • Turista viaja Hotel. N:M • Jugador juega en Equipo. N:1 • Político gobierna en País. 1:1 7. Justifica qué tipo de atributos son los siguientes atributos de la entidad Persona: • Fecha de Nacimiento (p.ej. 24/11/1976) fecha/hora • Lugar de Nacimiento (p.ej. Zaragoza) texto (cadenas de caracteres de longitud 25) • Edad (p.ej. 36 años) numérico (naturales) • EsMayorDeEdad (p. ej: Sí) booleano • DNI (p.ej. 55582739A) texto • Teléfonos (p.ej. 925884721, 657662531) texto • Apellidos texto 8. ¿Qué tipo de relación de dependencia tienen las siguientes entidades? La relación que une a una entidad fuerte con una débil (por ejemplo: préstamos y sus pagos, compañía software y aplicación, pedidos y detalle de pedidos, cuentas bancarias y transacciones, libros y sus ejemplares, …) también es débil, puesto que también desaparece si desaparece la entidad fuerte. En estos casos, la relación tiene una dependencia que puede ser de dos tipos: 1. Dependencia por existencia: Las ocurrencias de la entidad débil pueden identificarse mediante un atributo clave sin necesidad de identificar la entidad fuerte relacionada. las ocurrencias de la débil le dicen a las ocurrencias de la fuerte “no vengas”. Por ejemplo, las entidades cuenta bancaria y transacción. Cuenta bancaria es la fuerte y transacción la débil. La clave principal de la tabla cuentas podrá ser idcuenta, mientras que la clave principal de la tabla transacciones podría ser idtransaccion, que tendrá como clave ajena el campo idcuenta; este tipo de dependencia. expresa que, las ocurrencias de una entidad débil, no tienen ningún sentido en la base de datos sin la presencia de las ocurrencias de la entidad fuerte con la que están relacionadas. Por ejemplo, las transacciones que se dan en una cuenta bancaria, no tienen sentido si no existe la cuenta bancaria a la que están asociadas. Ejemplos: cuentas bancarias y transacciones, autor y libro 2. Dependencia por identificación: las ocurrencias de la entidad débil no pueden ser identificadas sin la entidad fuerte relacionada; este tipo se produce cuando, además de la dependencia de existencia, la entidad débil necesita a la fuerte para poder crear una clave, de tal manera que pueda completar la identiıcación de sus ocurrencias. Por ejemplo, una empresa fabricante de software crea aplicaciones: La compañía se identifica por su nombre (por ejemplo, Microsoft).; Las aplicaciones se identifican por su nombre comercial, por ejemplo (Office). Cada compañía de software pone un nombre a cada una de sus aplicaciones. compañía software (idcompañia,........ aplicacion (idcompañia, idaplicacion,... Otro ejemplo es la relación entre préstamo y pago, entre libro y ejemplar, entre pedido y detalle de pedido... • Un toro (entidad débil) pertenece a una ganadería (entidad fuerte). Al toro se le identifica por el número de toro, y el nombre de su ganadería, puesto que puede haber varios toros con el mismo número, pero pertenecientes a distintas ganaderías. solución: dependencia por identificacion ganaderías (nombreganaderia,añofundacion,......) toros (nombreganaderia, numerotoro,....) • En el acceso al parking de una empresa un empleado (entidad fuerte) tiene un vehículo (entidad débil). solución: dependencia por existencia empleados (nif,......) vehiculos (matricula, …., nif,....)