MODELO ENTIDAD RELACION




                 PRESENTADO POR:
            YEIMEN ANDREA ARGO SILVA
              ANGELICA PEÑA CORTES




     “ITFIP” INSTITUCION DE EDUCACION SUPERIOR
FACULTAD DE INGENIERIA Y CIENCIAS AGROINDUSTRIALES
         PROGRAMA: SISTEMAS Y COMPUTACION
                AREA: BASES DE DATOS
                   ESPINAL- TOLIMA
                       AÑO 2012

                   EJERCICIO 1.
Imagina que una agencia de seguros de tu municipio te ha solicitado una
base de datos mediante la cual llevar un control de los accidentes y las
multas. Tras una serie de entrevistas, has tomado las siguientes notas:

"Se desean registrar todas las personas que tienen un vehículo. Es
necesario guardar los datos personales de cada persona (nombre,
apellidos, dirección, población, teléfono y DNI).

De cada vehículo se desea almacenar la matrícula, la marca y el modelo.
Una persona puede tener varios vehículos, y puede darse el caso de un
vehículo pertenezca a varias personas a la vez.

También se desea incorporar la información destinada a gestionar los
accidentes del municipio. Cada accidente posee un número de referencia
correlativo según orden de entrada a la base de datos. Se desea conocer
la fecha, lugar y hora en que ha tenido lugar cada accidente. Se debe
tener en cuenta que un accidente puede involucrar a varias personas y
varios vehículos.

Se desea llevar también un registro de las multas que se aplican. Cada
multa tendrá asignado un número de referencia correlativo. Además,
deberá registrarse la fecha, hora, lugar de infracción e importe de la
misma. Una multa solo se aplicará a un conductor e involucra a un solo
vehículo."

Realiza el modelo E-R y pásalo al modelo relacional.




MODELO ENTIDAD RELACION
MODELO RELACIONAL
-- MySQL dump 10.13
--
-- Host: localhost Database: agencia_seguros
-- ------------------------------------------------------
-- Server version 6.0.4-alpha-community-log

/*!40101 SET
@OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;
/*!40101 SET
@OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;
/*!40101 SET
@OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */;
/*!40101 SET NAMES utf8 */;
/*!40103 SET @OLD_TIME_ZONE=@@TIME_ZONE */;
/*!40103 SET TIME_ZONE='+00:00' */;
/*!40014 SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS,
UNIQUE_CHECKS=0 */;
/*!40014 SET
@OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS,
FOREIGN_KEY_CHECKS=0 */;
/*!40101 SET @OLD_SQL_MODE=@@SQL_MODE,
SQL_MODE='NO_AUTO_VALUE_ON_ZERO' */;
/*!40111 SET @OLD_SQL_NOTES=@@SQL_NOTES, SQL_NOTES=0
*/;

--
-- Table structure for table `accidente`
--

DROP TABLE IF EXISTS `accidente`;
SET @saved_cs_client     = @@character_set_client;
SET character_set_client = utf8;
CREATE TABLE `accidente` (
  `NUMREFERENCIA` varchar(15) NOT NULL,
  `FECHACCIDENTE` datetime NOT NULL,
  `LUGACCIDENTE` varchar(50) NOT NULL,
  `HORACCIDENTE` datetime NOT NULL,
  PRIMARY KEY (`NUMREFERENCIA`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
SET character_set_client = @saved_cs_client;

--
-- Dumping data for table `accidente`
--

LOCK TABLES `accidente` WRITE;
/*!40000 ALTER TABLE `accidente` DISABLE KEYS */;
/*!40000 ALTER TABLE `accidente` ENABLE KEYS */;
UNLOCK TABLES;

--
-- Table structure for table `multa`
--

DROP TABLE IF EXISTS `multa`;
SET @saved_cs_client     = @@character_set_client;
SET character_set_client = utf8;
CREATE TABLE `multa` (
  `NUMREFEMULTA` varchar(30) NOT NULL,
  `FECMULTA` datetime NOT NULL,
  `HORMULTA` datetime NOT NULL,
  `LUGMULTA` varchar(30) NOT NULL,
  `IMPOMULTA` varchar(45) NOT NULL,
  PRIMARY KEY (`NUMREFEMULTA`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
SET character_set_client = @saved_cs_client;

--
-- Dumping data for table `multa`
--

LOCK TABLES `multa` WRITE;
/*!40000 ALTER TABLE `multa` DISABLE KEYS */;
/*!40000 ALTER TABLE `multa` ENABLE KEYS */;
UNLOCK TABLES;

--
-- Table structure for table `persona`
--
DROP TABLE IF EXISTS `persona`;
SET @saved_cs_client     = @@character_set_client;
SET character_set_client = utf8;
CREATE TABLE `persona` (
  `DNIPERSONA` varchar(15) NOT NULL,
  `NOMBPERSONA` varchar(30) NOT NULL,
  `APEPERSONA` varchar(30) NOT NULL,
  `DIRECPERSONA` varchar(35) NOT NULL,
  `POBLACION` varchar(50) NOT NULL,
  `TELEFONO` varchar(12) NOT NULL,
  PRIMARY KEY (`DNIPERSONA`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
SET character_set_client = @saved_cs_client;

--
-- Dumping data for table `persona`
--

LOCK TABLES `persona` WRITE;
/*!40000 ALTER TABLE `persona` DISABLE KEYS */;
/*!40000 ALTER TABLE `persona` ENABLE KEYS */;
UNLOCK TABLES;

--
-- Table structure for table `tener`
--

DROP TABLE IF EXISTS `tener`;
SET @saved_cs_client     = @@character_set_client;
SET character_set_client = utf8;
CREATE TABLE `tener` (
 `CONSTENER` int(11) NOT NULL AUTO_INCREMENT,
 `DNIPERSONA` varchar(15) NOT NULL,
 `MATRIVEHICULO` varchar(15) NOT NULL,
 PRIMARY KEY (`CONSTENER`,`DNIPERSONA`,`MATRIVEHICULO`),
 KEY `DNIPERSONA` (`DNIPERSONA`),
 KEY `MATRIVEHICULO` (`MATRIVEHICULO`),
CONSTRAINT `tener_ibfk_1` FOREIGN KEY (`DNIPERSONA`)
REFERENCES `persona` (`DNIPERSONA`),
  CONSTRAINT `tener_ibfk_2` FOREIGN KEY (`MATRIVEHICULO`)
REFERENCES `vehiculo` (`MATRIVEHICULO`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
SET character_set_client = @saved_cs_client;

--
-- Dumping data for table `tener`
--

LOCK TABLES `tener` WRITE;
/*!40000 ALTER TABLE `tener` DISABLE KEYS */;
/*!40000 ALTER TABLE `tener` ENABLE KEYS */;
UNLOCK TABLES;

--
-- Table structure for table `vehiculo`
--

DROP TABLE IF EXISTS `vehiculo`;
SET @saved_cs_client     = @@character_set_client;
SET character_set_client = utf8;
CREATE TABLE `vehiculo` (
  `MATRIVEHICULO` varchar(15) NOT NULL,
  `MARCVEHICULO` varchar(15) NOT NULL,
  `MODEVEHICULO` varchar(15) NOT NULL,
  PRIMARY KEY (`MATRIVEHICULO`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
SET character_set_client = @saved_cs_client;

--
-- Dumping data for table `vehiculo`
--

LOCK TABLES `vehiculo` WRITE;
/*!40000 ALTER TABLE `vehiculo` DISABLE KEYS */;
/*!40000 ALTER TABLE `vehiculo` ENABLE KEYS */;
UNLOCK TABLES;
/*!40103 SET TIME_ZONE=@OLD_TIME_ZONE */;

/*!40101 SET SQL_MODE=@OLD_SQL_MODE */;
/*!40014 SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS
*/;
/*!40014 SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS */;
/*!40101 SET
CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */;
/*!40101 SET
CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */;
/*!40101 SET
COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */;
/*!40111 SET SQL_NOTES=@OLD_SQL_NOTES */;

-- Dump completed on 2012-05-12 1:56:58




EJERCICIO 2.



Se trata de realizar el diseño de la base de datos en el modelo E/R para
una cadena de hoteles.

"Cada hotel (del que interesa almacenar su nombre, dirección, teléfono,
año de construcción, etc.) se encuentra clasificado obligatoriamente en
una categoría (por ejemplo, tres estrellas) pudiendo bajar o aumentar de
categoría.
Cada categoría tiene asociada diversas informaciones, como, por ejemplo,
el tipo de IVA que le corresponde y la descripción.

Los hoteles tiene diferentes clases de habitaciones (suites, dobles,
individuales, etc.), que se numeran de forma que se pueda identificar
fácilmente la planta en la que se encuentran. Así pues, de cada
habitación se desea guardar el código y el tipo de habitación.

Los particulares pueden realizar reservas de las habitaciones de los
hoteles. En la reserva de los particulares figurarán el nombre, la
dirección y el teléfono.

Las agencias de viaje también pueden realizar reservas de las
habitaciones. En caso de que la reserva la realiza una agencia de viajes,
se necesitarán los mismos datos que para los particulares, además del
nombre de la persona para quien la agencia de viajes está realizando la
reserva.

En los dos casos anteriores también se debe almacenar el precio de la
reserva, la fecha de inicio y la fecha de fin de la reserva".




                    MODELO ENTIDAD        RELACION
MODELO RELACIONAL
EJERCICIO 3.

"Una empresa necesita organizar la siguiente información referente a su
organización interna.

La empresa está organizada en una serie de departamentos. Cada
departamento tiene un código, nombre y presupuesto anual. Cada
departamento está ubicado en un centro de trabajo. La información que
se desea guardar del centro de trabajo es el código de centro, nombre,
población y dirección del centro.

La empresa tiene una serie de empleados. Cada empleado tiene un
teléfono, fecha de alta en la empresa, NIF y nombre. De cada empleado
también interesa saber el número de hijos que tiene y el salario de cada
empleado.

A esta empresa también le interesa tener guardada información sobre los
hijos de los empleados. Cada hijo de un empleado tendrá un código,
nombre y fecha de nacimiento.

Se desea mantener también información sobre las habilidades de los
empleados (por ejemplo, mercadotecnia, trato con el cliente, fresador,
operador de telefonía, etc.). Cada habilidad tendrá una descripción y un
código".
Sobre este supuesto diseñar el modelo E/R y el modelo relacional
teniendo en cuenta los siguientes aspectos.
Un empleado está asignado a un único departamento. Un departamento
estará compuesto por uno o más empleados.
Cada departamento se ubica en un único centro de trabajo. Estos se
componen de uno o más departamentos.
Un empleado puede tener varios hijos.
Un empleado puede tener varias habilidades, y una misma habilidad
puede ser poseída por empleados diferentes.
Un centro de trabajo es dirigido por un empleado. Un mismo empleado
puede dirigir centros de trabajo distintos.




                    MODELO ENTIDAD RELACION
MODELO RELACIONAL
TALLER N°2
EJERCICIO 1.

A partir del siguiente enunciado se desea realiza el modelo
entidad-relación y pasarlo al modelo de datos relacional.

Una agencia de viajes desea informatizar toda la gestión de
los viajeros que acuden a la agencia y los viajes que estos
realizan. Tras ponernos en contacto con la agencia, ésta nos
proporciona la siguiente información.

"La agencia desea guardar la siguiente información de los
viajeros: dni, nombre, dirección y teléfono.

De cada uno de los viajes que maneja la agencia interesa
guardar el código de viaje, número de plazas, fecha en la que
se realiza el viaje y otros datos. Un viajero puede realizar
tantos viajes como desee con la agencia. Un viaje determinado
sólo puede ser cubierto por un viajero.

Cada viaje realizado tiene un destino y un lugar de origen. De
cada uno de ellos se quiere almacenar el código, nombre y
otros datos que puedan ser de interés. Un viaje tiene un único
lugar de destino y un único lugar de origen".




                  MODELO ENTIDAD RELACION
MODELO RELACIONAL




EJERCICIO 2.
A partir del siguiente enunciado se desea realiza el modelo entidad-
relación y pasarlo al modelo de datos relacional.

"A un concesionario de coches llegan clientes para comprar automóviles.
De cada coche interesa saber la matrícula, modelo, marca y color. Un
cliente puede comprar varios coches en el concesionario. Cuando un
cliente compra un coche, se le hace una ficha en el concesionario con la
siguiente información: dni, nombre, apellidos, dirección y teléfono.

Los coches que el concesionario vende pueden ser nuevos o usados (de
segunda mano). De los coches nuevos interesa saber el número de
unidades que hay en el concesionario. De los coches viejos interesa el
número de kilómetros que lleva recorridos.

El concesionario también dispone de un taller en el que los mecánicos
reparan los coches que llevan los clientes. Un mecánico repara varios
coches a lo largo del día, y un coche puede ser reparado por varios
mecánicos. Los mecánicos tienen un dni, nombre, apellidos, fecha de
contratación y salario. Se desea guardar también la fecha en la que se
repara cada vehículo y el número de horas que se tardado en arreglar
cada automóvil".




MODELO ENTIDAD RELACION
MODELO RELACIONAL
EJERCICIO 3.

A partir del siguiente enunciado se desea realiza el modelo entidad-
relación y pasarlo al modelo de datos relacional.
Una empresa de aparatos electrónicos desea informatizar sus datos.

Cada aparato electrónico viene determinado por un Código único y una
descripción. Además cada aparato corresponde a un tipo de
electrodomésticos (a lo sumo).

Cada tipo de electrodoméstico (televisor, mp3, lavadora, etc.) tiene un
nombre y unas características (un campo de texto). Se supone que no
hay dos tipos con el mismo nombre y características. Algunos tipos
pueden formar parte de otro tipo más general (mp3 de aparato de
música), pero en este caso solo forman parte de un único tipo.

Los componentes son las piezas que forman el aparato. Vienen dados por
un nombre (por ejemplo transformador) y unas especificaciones (un campo
de texto).

También nos interesa conocer datos de los fabricantes de componentes:
Su CIF (único) y su domicilio social.

Cada aparato puede llevar cualquier cantidad de componentes. Interesa
saber para cada aparato que componentes lleva y que fabricante
suministra cada componente. Un aparato puede llevar muchas unidades de
un mismo componente (interesa saber cuántas), pero en este caso todas
estarán suministradas por el mismo fabricante y con un mismo precio.




MODELO ENTIDAD RELACION
MODELO RELACIONAL




EJERCICIO 4.
Para los siguientes enunciados identifique las entidades y sus
relaciones.
   ●Una persona puede comprar una o muchas casas, Una casa
debe ser propiedad de una sola persona.

                  MODELO ENTIDAD RELACION




                        MODELO RELACIONAL




b.Un cliente debe comprar uno o muchos productos, Un producto debe
ser comprado por un cliente.
MODELO ENTIDAD RELACION




                        MODELO RELACIONAL




C.Un proveedor puede proveer uno o más productos, Un producto debe
ser provisto por uno o más proveedores.
MODELO ENTIDAD RELACION




                       MODELO RELACIONAL




d. Un empleado puede estar a cargo de uno o muchos empleados, Un
empleado debe ser subordinado de un empleado.




                   MODELO ENTIDAD RELACION
MODELO RELACIONAL




e. Un investigador puede hacer muchas observaciones, Una observación
debe ser hecha por un investigador.




                   MODELO ENTIDAD RELACION
MODELO RELACIONAL




f. Un territorio puede pertenecer a una comunidad, Una comunidad debe
habitar en un territorio.



                   MODELO ENTIDAD RELACION
MODELO RELACIONAL




g. Una hembra puede ser la madre de muchos chimpancés. Un chimpancé
debe ser hijo de una hembra.



                   MODELO ENTIDAD RELACION
MODELO RELACIONAL




h. Un libro puede ser escrito por uno o muchos autores. Un autor puede
escribir muchos libros.




                    MODELO ENTIDAD RELACION
MODELO RELACIONAL




  ●i. Un estudiante está matriculado en muchos cursos. En un hay
muchos estudiantes matriculados.

                    MODELO ENTIDAD RELACION




   MODELO
                            RELACIONAL
j. Una base de datos debe contener información relativa a las ventas de
los productos de una cierta compañía. Cada agente de la compañía es
responsable de las ventas en una o más áreas. Cada área tiene uno o
más agentes como responsables de las ventas que se realicen en ella.
Cada agente es responsable de la venta de uno o más productos y cada
producto tiene uno o más agentes responsables de su venta. Un producto
se vende en todas las áreas y en un área se pueden vender todos los
productos.




   MODELO
  ENTIDAD
  RELACION
MODELO RELACIONAL




EJERCICIO 5.

A partir del siguiente enunciado se desea realiza el modelo entidad-relación y
pasarlo al modelo de datos relacional.

La cooperativa ‘Jonh F. Kennedy’ tiene como objetivo prestar dinero a sus
socios. Para ello tiene diferentes modalidades de préstamo (vivienda, vehículo,
estudio, electrodomésticos...), cada modalidad tiene un plazo máximo estipulado
y una tasa de interés definida. Los socios pueden tener varios préstamos a la
vez y para cada uno la cooperativa registra los siguientes datos:
Número del préstamo, fecha de inicio, el valor del préstamo, la cuota mensual y
el plazo en meses el cual no puede sobrepasar el plazo máximo estipulado.

Cada socio para adquirir un préstamo debe estar trabajando en una empresa,
por lo tanto la cooperativa guarda no sólo los datos del socio sino también los de
la empresa en la cual trabaja ya que se lleva estadísticas sobre las empresas
que más socios tienen asociados a la cooperativa.

De las empresas interesa conocer persona de contacto, dirección de la empresa
y número de empleados total, y si actualmente se tiene o no convenio con ellos.
De los socios además de sus datos básicos (cédula, nombre, teléfono, dirección,
número de celular y correo electrónico opcionales), interesa conocer el salario
mensual. Cada préstamo requiere además de un codeudor del cual se registran
sus datos básicos. También es importante conocer si el codeudor es un posible
cliente o no, para enviarle información para que se afilie a la cooperativa.
En caso de que un codeudor se vuelve socio de la compañía entonces es
necesario que el asociado solicitante del préstamo consiga otro codeudor
externo, no se permiten codeudores que sean socios de la cooperativa.




MODELO ENTIDAD RELACION
MODELO RELACIONAL




EJERCICIO 6.

A partir del siguiente enunciado se desea realiza el modelo entidad-relación y
pasarlo al modelo de datos relacional.

Se desea diseñar una base de datos para una comisaría de policía que recoja la
información acerca de su funcionamiento.       Se consideran los siguientes
supuestos:

·En la comisaría trabajan una serie de policías que tienen una cedula, nombre y
categoría, ellos pueden desempeñar funciones distintas como administrativas,
agentes etc.
·Cada policía tiene un único jefe aunque un policía puede ser jefe de varios.
·En la comisaría existe un arsenal de armas. Cada arma está identificada por un
código único pertenece a una clase y tiene un nombre determinado.
·Cada policía puede utilizar una o varias armas en un momento determinado. Es
importante conocer el grado de habilidad (puntuación de 1 a 10) de cada policía
con cada una de las armas que utiliza.
·Un delincuente tiene una identificación, nombre y teléfono es arrestado por uno
o más policías.
·A cada delincuente que permanece en la comisaría se le encierra en un
calabozo que tiene un código y una ubicación.
·En el calabozo pueden estar encerrados varios delincuentes.
·Los delincuentes están involucrados en casos de los que se conocen el código
del caso y el juzgado que los instruye); Interesa saber cuál es principal cargo
(robo, homicidio etc.) que se le atribuye a un delincuente en cada caso que esté
involucrado.
·Uno o varios policías investigan cada uno de los casos


                      MODELO ENTIDAD RELACION




                       MODELO RELACIONAL
TALLER SEMANA SANTA
Obtén el modelo ERE, relacional: Queremos hacer una aplicación para
gestionar un pequeño aeropuerto. En este aeropuerto tendremos aviones
identificados por un número, cada avión puede ser de un tipo diferente
identificado por un modelo, su peso y su capacidad.
Los aviones los guardamos en hangares que se identifican por un número, una
capacidad y una localización.
En este aeropuerto tenemos tres tipos de personas (nss, dirección y
teléfono): piloto (num licencia, restricciones), empleados (salario y turno) y
propietarios. Cada piloto puede volar en distintos tipos de aviones, así mismo,
los empleados trabajan para ciertos tipos de aviones. Los aviones son
posesión de uno o varios propietarios interesándonos almacenar desde qué
fecha lo poseen.

                      MODELO ENTIDAD RELACION
MODELO RELACIONAL




EJERCICIO 2.
Dado el siguiente enunciado, obtén el modelo entidad-relación extendido,
relacional.
Una empresa dedicada a la realización de reformas y construcciones en
general maneja la siguiente información para llevar parte de su negocio.
La empresa dispone de albañiles en plantilla de los que almacena, entre otras
cosas, el número de la Seguridad Social, nombre, apellidos, fecha de
nacimiento, números de los teléfonos que dispone (fijos y/o móviles) y
categoría profesional. Las categorías profesionales en las que clasifica a los
albañiles son Maestro y Peón, pudiendo haber otras categorías. Si un albañil
tiene la categoría de Maestro almacena el dni y el sueldo. Si es Peón Albañil
almacena, el dni y el sueldo en el caso de ser de nacionalidad española, y el
país de origen y sueldo si es extranjero. Obviamente un albañil sólo puede
pertenecer a una categoría.
Los albañiles en plantilla están agrupados en cuadrillas propias de la empresa
(un albañil debe encontrarse en una y solo una cuadrilla) de las que se
almacena un código interno, nombre (que también la identifica) y localidad
principal de actuación.
MODELO ENTIDAD RELACION
MODELO RELACIONAL




EJERCICIO 3.

Dado el siguiente enunciado, obtén el modelo entidad-relación extendido,
relacional.
Una empresa dedicada a la venta de material óptico desea que diseñemos
una base de datos para la automatización de sus procesos. La
información relevante desde el punto de vista del modelo de datos es la
siguiente:
Los productos que vende la empresa son lentes de contacto o gafas,
interesando conocer de ellos su código de producto (que es único), su
precio de venta y su marca. En cuanto a las lentes de contacto interesa,
además, conocer su tipo (blandas, rígidas, etc.), su color, los productos
de limpieza que requiere y su graduación. Para las gafas, se desea
también almacenar su modelo, el material de fabricación.
Se debe tener en cuenta que la empresa dispondrá de gafas graduadas,
de gafas de sol y de gafas de sol graduadas. De las gafas graduadas,
interesa conocer su graduación así como en qué tipo de problemas
oculares se pueden utilizar (miopía, astigmatismo, etc.). De las gafas de
sol, interesa conocer el nivel de filtrado de los rayos ultravioleta.
Hay que tener en cuenta además que queremos gestionar las personas
que han comprado gafas en nuestro establecimiento, para estas personas
almacenaremos un código y el nombre. Además cada persona pertenece a
un tipo (habitual, ocasional...) y queremos almacenar para cada tipo de
usuarios que descuentos se aplican en las gafas de sol.



                    MODELO ENTIDAD RELACION
MODELO RELACIONAL
BASE DE DATOS
BASE DE DATOS

BASE DE DATOS

  • 1.
    MODELO ENTIDAD RELACION PRESENTADO POR: YEIMEN ANDREA ARGO SILVA ANGELICA PEÑA CORTES “ITFIP” INSTITUCION DE EDUCACION SUPERIOR FACULTAD DE INGENIERIA Y CIENCIAS AGROINDUSTRIALES PROGRAMA: SISTEMAS Y COMPUTACION AREA: BASES DE DATOS ESPINAL- TOLIMA AÑO 2012 EJERCICIO 1.
  • 2.
    Imagina que unaagencia de seguros de tu municipio te ha solicitado una base de datos mediante la cual llevar un control de los accidentes y las multas. Tras una serie de entrevistas, has tomado las siguientes notas: "Se desean registrar todas las personas que tienen un vehículo. Es necesario guardar los datos personales de cada persona (nombre, apellidos, dirección, población, teléfono y DNI). De cada vehículo se desea almacenar la matrícula, la marca y el modelo. Una persona puede tener varios vehículos, y puede darse el caso de un vehículo pertenezca a varias personas a la vez. También se desea incorporar la información destinada a gestionar los accidentes del municipio. Cada accidente posee un número de referencia correlativo según orden de entrada a la base de datos. Se desea conocer la fecha, lugar y hora en que ha tenido lugar cada accidente. Se debe tener en cuenta que un accidente puede involucrar a varias personas y varios vehículos. Se desea llevar también un registro de las multas que se aplican. Cada multa tendrá asignado un número de referencia correlativo. Además, deberá registrarse la fecha, hora, lugar de infracción e importe de la misma. Una multa solo se aplicará a un conductor e involucra a un solo vehículo." Realiza el modelo E-R y pásalo al modelo relacional. MODELO ENTIDAD RELACION
  • 3.
  • 4.
    -- MySQL dump10.13 -- -- Host: localhost Database: agencia_seguros -- ------------------------------------------------------
  • 5.
    -- Server version6.0.4-alpha-community-log /*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */; /*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */; /*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */; /*!40101 SET NAMES utf8 */; /*!40103 SET @OLD_TIME_ZONE=@@TIME_ZONE */; /*!40103 SET TIME_ZONE='+00:00' */; /*!40014 SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0 */; /*!40014 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */; /*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO' */; /*!40111 SET @OLD_SQL_NOTES=@@SQL_NOTES, SQL_NOTES=0 */; -- -- Table structure for table `accidente` -- DROP TABLE IF EXISTS `accidente`; SET @saved_cs_client = @@character_set_client; SET character_set_client = utf8; CREATE TABLE `accidente` ( `NUMREFERENCIA` varchar(15) NOT NULL, `FECHACCIDENTE` datetime NOT NULL, `LUGACCIDENTE` varchar(50) NOT NULL, `HORACCIDENTE` datetime NOT NULL, PRIMARY KEY (`NUMREFERENCIA`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; SET character_set_client = @saved_cs_client; --
  • 6.
    -- Dumping datafor table `accidente` -- LOCK TABLES `accidente` WRITE; /*!40000 ALTER TABLE `accidente` DISABLE KEYS */; /*!40000 ALTER TABLE `accidente` ENABLE KEYS */; UNLOCK TABLES; -- -- Table structure for table `multa` -- DROP TABLE IF EXISTS `multa`; SET @saved_cs_client = @@character_set_client; SET character_set_client = utf8; CREATE TABLE `multa` ( `NUMREFEMULTA` varchar(30) NOT NULL, `FECMULTA` datetime NOT NULL, `HORMULTA` datetime NOT NULL, `LUGMULTA` varchar(30) NOT NULL, `IMPOMULTA` varchar(45) NOT NULL, PRIMARY KEY (`NUMREFEMULTA`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; SET character_set_client = @saved_cs_client; -- -- Dumping data for table `multa` -- LOCK TABLES `multa` WRITE; /*!40000 ALTER TABLE `multa` DISABLE KEYS */; /*!40000 ALTER TABLE `multa` ENABLE KEYS */; UNLOCK TABLES; -- -- Table structure for table `persona` --
  • 7.
    DROP TABLE IFEXISTS `persona`; SET @saved_cs_client = @@character_set_client; SET character_set_client = utf8; CREATE TABLE `persona` ( `DNIPERSONA` varchar(15) NOT NULL, `NOMBPERSONA` varchar(30) NOT NULL, `APEPERSONA` varchar(30) NOT NULL, `DIRECPERSONA` varchar(35) NOT NULL, `POBLACION` varchar(50) NOT NULL, `TELEFONO` varchar(12) NOT NULL, PRIMARY KEY (`DNIPERSONA`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; SET character_set_client = @saved_cs_client; -- -- Dumping data for table `persona` -- LOCK TABLES `persona` WRITE; /*!40000 ALTER TABLE `persona` DISABLE KEYS */; /*!40000 ALTER TABLE `persona` ENABLE KEYS */; UNLOCK TABLES; -- -- Table structure for table `tener` -- DROP TABLE IF EXISTS `tener`; SET @saved_cs_client = @@character_set_client; SET character_set_client = utf8; CREATE TABLE `tener` ( `CONSTENER` int(11) NOT NULL AUTO_INCREMENT, `DNIPERSONA` varchar(15) NOT NULL, `MATRIVEHICULO` varchar(15) NOT NULL, PRIMARY KEY (`CONSTENER`,`DNIPERSONA`,`MATRIVEHICULO`), KEY `DNIPERSONA` (`DNIPERSONA`), KEY `MATRIVEHICULO` (`MATRIVEHICULO`),
  • 8.
    CONSTRAINT `tener_ibfk_1` FOREIGNKEY (`DNIPERSONA`) REFERENCES `persona` (`DNIPERSONA`), CONSTRAINT `tener_ibfk_2` FOREIGN KEY (`MATRIVEHICULO`) REFERENCES `vehiculo` (`MATRIVEHICULO`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; SET character_set_client = @saved_cs_client; -- -- Dumping data for table `tener` -- LOCK TABLES `tener` WRITE; /*!40000 ALTER TABLE `tener` DISABLE KEYS */; /*!40000 ALTER TABLE `tener` ENABLE KEYS */; UNLOCK TABLES; -- -- Table structure for table `vehiculo` -- DROP TABLE IF EXISTS `vehiculo`; SET @saved_cs_client = @@character_set_client; SET character_set_client = utf8; CREATE TABLE `vehiculo` ( `MATRIVEHICULO` varchar(15) NOT NULL, `MARCVEHICULO` varchar(15) NOT NULL, `MODEVEHICULO` varchar(15) NOT NULL, PRIMARY KEY (`MATRIVEHICULO`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; SET character_set_client = @saved_cs_client; -- -- Dumping data for table `vehiculo` -- LOCK TABLES `vehiculo` WRITE; /*!40000 ALTER TABLE `vehiculo` DISABLE KEYS */; /*!40000 ALTER TABLE `vehiculo` ENABLE KEYS */;
  • 9.
    UNLOCK TABLES; /*!40103 SETTIME_ZONE=@OLD_TIME_ZONE */; /*!40101 SET SQL_MODE=@OLD_SQL_MODE */; /*!40014 SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS */; /*!40014 SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS */; /*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */; /*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */; /*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */; /*!40111 SET SQL_NOTES=@OLD_SQL_NOTES */; -- Dump completed on 2012-05-12 1:56:58 EJERCICIO 2. Se trata de realizar el diseño de la base de datos en el modelo E/R para una cadena de hoteles. "Cada hotel (del que interesa almacenar su nombre, dirección, teléfono, año de construcción, etc.) se encuentra clasificado obligatoriamente en una categoría (por ejemplo, tres estrellas) pudiendo bajar o aumentar de categoría.
  • 10.
    Cada categoría tieneasociada diversas informaciones, como, por ejemplo, el tipo de IVA que le corresponde y la descripción. Los hoteles tiene diferentes clases de habitaciones (suites, dobles, individuales, etc.), que se numeran de forma que se pueda identificar fácilmente la planta en la que se encuentran. Así pues, de cada habitación se desea guardar el código y el tipo de habitación. Los particulares pueden realizar reservas de las habitaciones de los hoteles. En la reserva de los particulares figurarán el nombre, la dirección y el teléfono. Las agencias de viaje también pueden realizar reservas de las habitaciones. En caso de que la reserva la realiza una agencia de viajes, se necesitarán los mismos datos que para los particulares, además del nombre de la persona para quien la agencia de viajes está realizando la reserva. En los dos casos anteriores también se debe almacenar el precio de la reserva, la fecha de inicio y la fecha de fin de la reserva". MODELO ENTIDAD RELACION
  • 11.
  • 12.
    EJERCICIO 3. "Una empresanecesita organizar la siguiente información referente a su organización interna. La empresa está organizada en una serie de departamentos. Cada departamento tiene un código, nombre y presupuesto anual. Cada
  • 13.
    departamento está ubicadoen un centro de trabajo. La información que se desea guardar del centro de trabajo es el código de centro, nombre, población y dirección del centro. La empresa tiene una serie de empleados. Cada empleado tiene un teléfono, fecha de alta en la empresa, NIF y nombre. De cada empleado también interesa saber el número de hijos que tiene y el salario de cada empleado. A esta empresa también le interesa tener guardada información sobre los hijos de los empleados. Cada hijo de un empleado tendrá un código, nombre y fecha de nacimiento. Se desea mantener también información sobre las habilidades de los empleados (por ejemplo, mercadotecnia, trato con el cliente, fresador, operador de telefonía, etc.). Cada habilidad tendrá una descripción y un código". Sobre este supuesto diseñar el modelo E/R y el modelo relacional teniendo en cuenta los siguientes aspectos. Un empleado está asignado a un único departamento. Un departamento estará compuesto por uno o más empleados. Cada departamento se ubica en un único centro de trabajo. Estos se componen de uno o más departamentos. Un empleado puede tener varios hijos. Un empleado puede tener varias habilidades, y una misma habilidad puede ser poseída por empleados diferentes. Un centro de trabajo es dirigido por un empleado. Un mismo empleado puede dirigir centros de trabajo distintos. MODELO ENTIDAD RELACION
  • 14.
  • 15.
  • 16.
    EJERCICIO 1. A partirdel siguiente enunciado se desea realiza el modelo entidad-relación y pasarlo al modelo de datos relacional. Una agencia de viajes desea informatizar toda la gestión de los viajeros que acuden a la agencia y los viajes que estos realizan. Tras ponernos en contacto con la agencia, ésta nos proporciona la siguiente información. "La agencia desea guardar la siguiente información de los viajeros: dni, nombre, dirección y teléfono. De cada uno de los viajes que maneja la agencia interesa guardar el código de viaje, número de plazas, fecha en la que se realiza el viaje y otros datos. Un viajero puede realizar tantos viajes como desee con la agencia. Un viaje determinado sólo puede ser cubierto por un viajero. Cada viaje realizado tiene un destino y un lugar de origen. De cada uno de ellos se quiere almacenar el código, nombre y otros datos que puedan ser de interés. Un viaje tiene un único lugar de destino y un único lugar de origen". MODELO ENTIDAD RELACION
  • 17.
  • 18.
    A partir delsiguiente enunciado se desea realiza el modelo entidad- relación y pasarlo al modelo de datos relacional. "A un concesionario de coches llegan clientes para comprar automóviles. De cada coche interesa saber la matrícula, modelo, marca y color. Un cliente puede comprar varios coches en el concesionario. Cuando un cliente compra un coche, se le hace una ficha en el concesionario con la siguiente información: dni, nombre, apellidos, dirección y teléfono. Los coches que el concesionario vende pueden ser nuevos o usados (de segunda mano). De los coches nuevos interesa saber el número de unidades que hay en el concesionario. De los coches viejos interesa el número de kilómetros que lleva recorridos. El concesionario también dispone de un taller en el que los mecánicos reparan los coches que llevan los clientes. Un mecánico repara varios coches a lo largo del día, y un coche puede ser reparado por varios mecánicos. Los mecánicos tienen un dni, nombre, apellidos, fecha de contratación y salario. Se desea guardar también la fecha en la que se repara cada vehículo y el número de horas que se tardado en arreglar cada automóvil". MODELO ENTIDAD RELACION
  • 19.
  • 20.
    EJERCICIO 3. A partirdel siguiente enunciado se desea realiza el modelo entidad- relación y pasarlo al modelo de datos relacional.
  • 21.
    Una empresa deaparatos electrónicos desea informatizar sus datos. Cada aparato electrónico viene determinado por un Código único y una descripción. Además cada aparato corresponde a un tipo de electrodomésticos (a lo sumo). Cada tipo de electrodoméstico (televisor, mp3, lavadora, etc.) tiene un nombre y unas características (un campo de texto). Se supone que no hay dos tipos con el mismo nombre y características. Algunos tipos pueden formar parte de otro tipo más general (mp3 de aparato de música), pero en este caso solo forman parte de un único tipo. Los componentes son las piezas que forman el aparato. Vienen dados por un nombre (por ejemplo transformador) y unas especificaciones (un campo de texto). También nos interesa conocer datos de los fabricantes de componentes: Su CIF (único) y su domicilio social. Cada aparato puede llevar cualquier cantidad de componentes. Interesa saber para cada aparato que componentes lleva y que fabricante suministra cada componente. Un aparato puede llevar muchas unidades de un mismo componente (interesa saber cuántas), pero en este caso todas estarán suministradas por el mismo fabricante y con un mismo precio. MODELO ENTIDAD RELACION
  • 22.
  • 23.
    Para los siguientesenunciados identifique las entidades y sus relaciones. ●Una persona puede comprar una o muchas casas, Una casa debe ser propiedad de una sola persona. MODELO ENTIDAD RELACION MODELO RELACIONAL b.Un cliente debe comprar uno o muchos productos, Un producto debe ser comprado por un cliente.
  • 24.
    MODELO ENTIDAD RELACION MODELO RELACIONAL C.Un proveedor puede proveer uno o más productos, Un producto debe ser provisto por uno o más proveedores.
  • 25.
    MODELO ENTIDAD RELACION MODELO RELACIONAL d. Un empleado puede estar a cargo de uno o muchos empleados, Un empleado debe ser subordinado de un empleado. MODELO ENTIDAD RELACION
  • 26.
    MODELO RELACIONAL e. Uninvestigador puede hacer muchas observaciones, Una observación debe ser hecha por un investigador. MODELO ENTIDAD RELACION
  • 27.
    MODELO RELACIONAL f. Unterritorio puede pertenecer a una comunidad, Una comunidad debe habitar en un territorio. MODELO ENTIDAD RELACION
  • 28.
    MODELO RELACIONAL g. Unahembra puede ser la madre de muchos chimpancés. Un chimpancé debe ser hijo de una hembra. MODELO ENTIDAD RELACION
  • 29.
    MODELO RELACIONAL h. Unlibro puede ser escrito por uno o muchos autores. Un autor puede escribir muchos libros. MODELO ENTIDAD RELACION
  • 30.
    MODELO RELACIONAL ●i. Un estudiante está matriculado en muchos cursos. En un hay muchos estudiantes matriculados. MODELO ENTIDAD RELACION MODELO RELACIONAL
  • 31.
    j. Una basede datos debe contener información relativa a las ventas de los productos de una cierta compañía. Cada agente de la compañía es responsable de las ventas en una o más áreas. Cada área tiene uno o más agentes como responsables de las ventas que se realicen en ella. Cada agente es responsable de la venta de uno o más productos y cada producto tiene uno o más agentes responsables de su venta. Un producto se vende en todas las áreas y en un área se pueden vender todos los productos. MODELO ENTIDAD RELACION
  • 32.
    MODELO RELACIONAL EJERCICIO 5. Apartir del siguiente enunciado se desea realiza el modelo entidad-relación y pasarlo al modelo de datos relacional. La cooperativa ‘Jonh F. Kennedy’ tiene como objetivo prestar dinero a sus socios. Para ello tiene diferentes modalidades de préstamo (vivienda, vehículo, estudio, electrodomésticos...), cada modalidad tiene un plazo máximo estipulado y una tasa de interés definida. Los socios pueden tener varios préstamos a la vez y para cada uno la cooperativa registra los siguientes datos:
  • 33.
    Número del préstamo,fecha de inicio, el valor del préstamo, la cuota mensual y el plazo en meses el cual no puede sobrepasar el plazo máximo estipulado. Cada socio para adquirir un préstamo debe estar trabajando en una empresa, por lo tanto la cooperativa guarda no sólo los datos del socio sino también los de la empresa en la cual trabaja ya que se lleva estadísticas sobre las empresas que más socios tienen asociados a la cooperativa. De las empresas interesa conocer persona de contacto, dirección de la empresa y número de empleados total, y si actualmente se tiene o no convenio con ellos. De los socios además de sus datos básicos (cédula, nombre, teléfono, dirección, número de celular y correo electrónico opcionales), interesa conocer el salario mensual. Cada préstamo requiere además de un codeudor del cual se registran sus datos básicos. También es importante conocer si el codeudor es un posible cliente o no, para enviarle información para que se afilie a la cooperativa. En caso de que un codeudor se vuelve socio de la compañía entonces es necesario que el asociado solicitante del préstamo consiga otro codeudor externo, no se permiten codeudores que sean socios de la cooperativa. MODELO ENTIDAD RELACION
  • 35.
    MODELO RELACIONAL EJERCICIO 6. Apartir del siguiente enunciado se desea realiza el modelo entidad-relación y pasarlo al modelo de datos relacional. Se desea diseñar una base de datos para una comisaría de policía que recoja la información acerca de su funcionamiento. Se consideran los siguientes supuestos: ·En la comisaría trabajan una serie de policías que tienen una cedula, nombre y categoría, ellos pueden desempeñar funciones distintas como administrativas, agentes etc. ·Cada policía tiene un único jefe aunque un policía puede ser jefe de varios. ·En la comisaría existe un arsenal de armas. Cada arma está identificada por un código único pertenece a una clase y tiene un nombre determinado. ·Cada policía puede utilizar una o varias armas en un momento determinado. Es importante conocer el grado de habilidad (puntuación de 1 a 10) de cada policía con cada una de las armas que utiliza. ·Un delincuente tiene una identificación, nombre y teléfono es arrestado por uno o más policías.
  • 36.
    ·A cada delincuenteque permanece en la comisaría se le encierra en un calabozo que tiene un código y una ubicación. ·En el calabozo pueden estar encerrados varios delincuentes. ·Los delincuentes están involucrados en casos de los que se conocen el código del caso y el juzgado que los instruye); Interesa saber cuál es principal cargo (robo, homicidio etc.) que se le atribuye a un delincuente en cada caso que esté involucrado. ·Uno o varios policías investigan cada uno de los casos MODELO ENTIDAD RELACION MODELO RELACIONAL
  • 38.
    TALLER SEMANA SANTA Obténel modelo ERE, relacional: Queremos hacer una aplicación para gestionar un pequeño aeropuerto. En este aeropuerto tendremos aviones identificados por un número, cada avión puede ser de un tipo diferente identificado por un modelo, su peso y su capacidad. Los aviones los guardamos en hangares que se identifican por un número, una capacidad y una localización. En este aeropuerto tenemos tres tipos de personas (nss, dirección y teléfono): piloto (num licencia, restricciones), empleados (salario y turno) y propietarios. Cada piloto puede volar en distintos tipos de aviones, así mismo, los empleados trabajan para ciertos tipos de aviones. Los aviones son posesión de uno o varios propietarios interesándonos almacenar desde qué fecha lo poseen. MODELO ENTIDAD RELACION
  • 39.
    MODELO RELACIONAL EJERCICIO 2. Dadoel siguiente enunciado, obtén el modelo entidad-relación extendido, relacional. Una empresa dedicada a la realización de reformas y construcciones en general maneja la siguiente información para llevar parte de su negocio. La empresa dispone de albañiles en plantilla de los que almacena, entre otras cosas, el número de la Seguridad Social, nombre, apellidos, fecha de nacimiento, números de los teléfonos que dispone (fijos y/o móviles) y categoría profesional. Las categorías profesionales en las que clasifica a los albañiles son Maestro y Peón, pudiendo haber otras categorías. Si un albañil tiene la categoría de Maestro almacena el dni y el sueldo. Si es Peón Albañil almacena, el dni y el sueldo en el caso de ser de nacionalidad española, y el país de origen y sueldo si es extranjero. Obviamente un albañil sólo puede pertenecer a una categoría. Los albañiles en plantilla están agrupados en cuadrillas propias de la empresa (un albañil debe encontrarse en una y solo una cuadrilla) de las que se almacena un código interno, nombre (que también la identifica) y localidad principal de actuación.
  • 40.
  • 41.
    MODELO RELACIONAL EJERCICIO 3. Dadoel siguiente enunciado, obtén el modelo entidad-relación extendido, relacional. Una empresa dedicada a la venta de material óptico desea que diseñemos una base de datos para la automatización de sus procesos. La
  • 42.
    información relevante desdeel punto de vista del modelo de datos es la siguiente: Los productos que vende la empresa son lentes de contacto o gafas, interesando conocer de ellos su código de producto (que es único), su precio de venta y su marca. En cuanto a las lentes de contacto interesa, además, conocer su tipo (blandas, rígidas, etc.), su color, los productos de limpieza que requiere y su graduación. Para las gafas, se desea también almacenar su modelo, el material de fabricación. Se debe tener en cuenta que la empresa dispondrá de gafas graduadas, de gafas de sol y de gafas de sol graduadas. De las gafas graduadas, interesa conocer su graduación así como en qué tipo de problemas oculares se pueden utilizar (miopía, astigmatismo, etc.). De las gafas de sol, interesa conocer el nivel de filtrado de los rayos ultravioleta. Hay que tener en cuenta además que queremos gestionar las personas que han comprado gafas en nuestro establecimiento, para estas personas almacenaremos un código y el nombre. Además cada persona pertenece a un tipo (habitual, ocasional...) y queremos almacenar para cada tipo de usuarios que descuentos se aplican en las gafas de sol. MODELO ENTIDAD RELACION
  • 43.