TRABAJO DE MODELO ENTIDAD RELACION, ESTUDIANTES DE SISTEMAS
ESPINAL-TOLIMA
Espero que puedan disfrutar de este material...
Estudiantes: SEBASTIAN ORTEGON OSPINA
JHONATAN TRIANA MARIN
1. MODELO ENTIDAD RELACIONAL
SEBASTIAN ORTEGON OSPINA
JHONATAN TRIANA MARIN
ALUMNOS
NAYIBE SORAYA LEON
DOCENTE
INSTITUTO TOLIMENSE DE FORMACION TECNICA PROFESIONAL-ITFIP
BASE DE DATOS
SISTEMAS lll
ESPINAL-TOLIMA
2012
2. INTRODUCCION
El presente trabajo pretende ser una modesta investigación de un
tema de gran importancia en los sistemas de información, los cuales
daremos a conocer algunos problemas con sus respectivas
soluciones, por medio del modelo de entidad relación, modelo relación
y daremos un script en el cual esta creada unas pequeñas bases de
datos en MYSQL.
Las ideas expuestas y las cuestiones tratadas en el trabajo no son
más que informaciones adoptadas inicialmente mostraremos que es
un modelo entidad relación y daremos el enunciado del programa que
se requiere, con su respectivo desarrollo, trabajaremos con una
herramienta CASE.
OBJETIVOS
3. Definir que es un modelo entidad-extendido.
Mostrarle a la comunidad un diccionario de datos el cual
contiene tabla por tabla que tipo de atributo se utiliza, longitud,
llaves principal y llaves primarias
Ayudar a la comunidad a cualquier duda que tenga respecto al
tema.
Dar a conocer comandos, con los cuales podemos construir una
base de datos.
QUE ES UN MODELO ENTIDAD
4. El modelo de datos entidad-relación está basado en una percepción del mundo real que consta de
una colección de objetos básicos, llamados entidades, y de relaciones entre esos objetos.
Entidad
Representa una “cosa” u "objeto" del mundo real con existencia independiente, es decir, se
diferencia unívocamente de otro objeto o cosa, incluso siendo del mismo tipo, o una misma
entidad.
Algunos Ejemplos:
Una persona. (Se diferencia de cualquier otra persona, incluso siendo gemelos).
Un automóvil. (Aunque sean de la misma marca, el mismo modelo,..., tendrán atributos
diferentes, por ejemplo, el número de chasis).
Una casa (Aunque sea exactamente igual a otra, aún se diferenciará en su dirección).
Atributos
Los atributos son las características que definen o identifican a una entidad. Estas pueden ser
muchas, y el diseñador solo utiliza o implementa las que considere más relevantes. Los atributos
son las propiedades que describen a cada entidad en un conjunto de entidades.
Relación
Describe cierta dependencia entre entidades o permite la asociación de las mismas.
Una relación tiene sentido al expresar las entidades que relaciona. En el ejemplo anterior, un
huésped (entidad), se aloja (relación) en una habitación (entidad).
Correspondencia de cordialidades
Dado un conjunto de relaciones en el que participan dos o más conjuntos de entidades, la
correspondencia de cardinalidad indica el número de entidades con las que puede estar
relacionada una entidad dada.
Dado un conjunto de relaciones binarias y los conjuntos de entidades A y B, la correspondencia de
cardinalidades puede ser:
Uno a Uno: Una entidad de A se relaciona únicamente con una entidad en B y viceversa
(ejemplo relación vehículo - matrícula: cada vehículo tiene una única matrícula, y cada
matrícula está asociada a un único vehículo).
Uno a varios: Una entidad en A se relaciona con cero o muchas entidades en B. Pero una
entidad en B se relaciona con una única entidad en A (ejemplo vendedor - ventas).
Varios a Uno: Una entidad en A se relaciona exclusivamente con una entidad en B. Pero una
entidad en B se puede relacionar con 0 o muchas entidades en A (ejemplo empleado-centro de
trabajo).
Varios a Varios: Una entidad en A se puede relacionar con 0 o muchas entidades en B y
viceversa (ejemplo asociaciones- ciudadanos, donde muchos ciudadanos pueden pertenecer a
una misma asociación, y cada ciudadano puede pertenecer a muchas asociaciones distintas).
5. Claves
Es un subconjunto del conjunto de atributos comunes en una colección de entidades, que permite
identificar unívocamente cada una de las entidades pertenecientes a dicha colección. Asimismo,
permiten distinguir entre sí las relaciones de un conjunto de relaciones.
Dentro de los conjuntos de entidades existen los siguientes tipos de claves:
Superclave: Es un subconjunto de atributos que permite distinguir unívocamente cada una de
las entidades de un conjunto de entidades. Si se añade un atributo al anterior subconjunto, el
resultado seguirá siendo una superclave.
Clave candidata: Dada una superclave, si ésta deja de serlo quitando únicamente uno de los
atributos que la componen, entonces ésta es una clave candidata.
Clave primaria: Es una clave candidata, elegida por el diseñador de la base de datos, para
identificar unívocamente las entidades en un conjunto de entidades.
El Modelo Entidad-Relación.
1. Se elabora el diagrama (o diagramas) entidad-relación.
2. Se completa el modelo con listas de atributos y una descripción de otras restricciones que
no se pueden reflejar en el diagrama.
El modelado de datos no acaba con el uso de esta técnica. Son necesarias otras técnicas para
lograr un modelo directamente implementable en una base de datos. Brevemente:
Transformación de relaciones múltiples en binarias.
Normalización de una base de datos de relaciones (algunas relaciones pueden transformarse
en atributos y viceversa).
Conversión en tablas (en caso de utilizar una base de datos relacional).
AGENCIA VIAJES
6. 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".
DICCIONARIO DE DATOS destino viaje
NOMBRE DE LA
TABLA: agencia
DESCRIPCION
DE LA TABLA:
FK
Descricio Contenid Format requerid
Nombre n Tipo Longitud o o Null Key a
a Tabla
Atributo Atributo Atributo Atributo Dato Foranea
a..z, not
DNI varchar 25 0..9 null PK
a..z, not
NOMBRE varchar 25 0..9 null
a..z, not
DIRECCION varchar 32 0..9 null
TELEFONO varchar 23 0..9 null
Las relaciones Con Otras
Tablas Entidad ( X )
inscripci Relacion (
on (1:N) N:N ) n:1
DICCIONARIO DE DATOS
NOMBRE DE LA
TABLA: destino
7. DESCRIPCION
DE LA TABLA:
FK
Descricio Contenid Format requerid
Nombre n Tipo Longitud o o Null Key a
a Tabla
Atributo Atributo Atributo Atributo Dato Foranea
CODIGODESTIN a..z, not
O varchar 14 0..9 null PK
FK
a..z, not requerid
CODIGO varchar 30 0..9 null a
NOMBRE_DSTI a..z, not
NO varchar 14 0..9 null
0..9
Las relaciones Con Otras
Tablas Entidad ( X )
inscripci
on (1:N) Relacion ( N:N )
DICCIONARIO DE DATOS
NOMBRE DE LA lug_orig
TABLA: en
DESCRIPCION
DE LA TABLA:
FK
Descricio Contenid Format requerid
Nombre n Tipo Longitud o o Null Key a
a Tabla
Atributo Atributo Atributo Atributo Dato Foranea
a..z, not
CODI_ORIGEN varchar 14 0..9 null PK
FK
a..z, not requerid
CODIGO varchar 30 0..9 null a
a..z, not
NOMBRE_ORI varchar 18 0..9 null
8. 0..9
Las relaciones Con Otras
Tablas Entidad ( X )
inscripci
on (1:N) Relacion ( N:N )
DICCIONARIO DE DATOS
NOMBRE DE LA
TABLA: viaje
DESCRIPCION
DE LA TABLA:
FK
Descricio Contenid Format requerid
Nombre n Tipo Longitud o o Null Key a
a Tabla
Atributo Atributo Atributo Atributo Dato Foranea
a..z, not
CODIGO varchar 30 0..9 null PK
FK
a..z, not requerid
DNI varchar 25 0..9 null a
a..z, not
NUM_PLAZAS varchar 14 0..9 null
FECHAVIAJE date 0..9
not
CODI_ORIGEN varchar 24 null
not
CODIGODESTINO varchar 25 null
Las relaciones Con Otras
Tablas Entidad ( X )
inscripci
on (1:N) Relacion ( N:N )
9. MODELO RELACIONAL
SCRIPT SQL
create table agenciaviaje
(
dni varchar(25),
nombre varchar(25),
direccion varchar(32),
telefono varchar(23),
primary key
(
dni
)
);
create table viaje
(
codigo varchar(30),
dni varchar(25),
11. codigo
)
);
MECANICO
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".
DICCIONARIO DE
DATOS
NOMBRE DE LA TABLA: CLIENTE
DESCRIPCION DE LA
TABLA:
Contenid Format Ke FK
Nombre Tipo Longitud o o Null y requerida
a Tabla
Atributo Atributo Atributo Dato Foranea
a..z, not
DNI VARCHAR 25 0..9 null PK
a..z, not
NOMBRE VARCHAR 25 0..9 null
a..z, not
APELLIDOS VARCHAR 25 0..9 null
not
DIRECCION VARCHAR 25 0..9 null
TELEFONO VARCHAR 25
Entidad (
Las relaciones Con Otras Tablas X )
Relacion (
) N:1
12. DICCIONARIO DE
DATOS
AUTO
NOMBRE DE LA TABLA:
DESCRIPCION DE LA
TABLA:
Contenid Format Ke FK
Nombre Tipo Longitud o o Null y requerida
a Tabla
Atributo Atributo Atributo Dato Foranea
a..z, not
matricula varchar 25 0..9 null PK
a..z, not FK
dni varchar 25 0..9 null requerida
a..z, not
modelo varchar 25 0..9 null
not
marca varchar 25 0..9 null
not
color varchar 25 null
Entidad (
Las relaciones Con Otras Tablas X )
Relacion (
)
DICCIONARIO DE
DATOS
NOMBRE DE LA TABLA: MECANICO
DESCRIPCION DE LA
TABLA:
Contenid Format Ke FK
Nombre Tipo Longitud o o Null y requerida
a Tabla
Atributo Atributo Atributo Dato Foranea
a..z, not
DNI_MECANICO VARCHAR 25 0..9 null PK
13. a..z, not
NOMBRE VARCHAR 25 0..9 null
a..z, not
APELLIDOS VARCHAR 25 0..9 null
FECHA_CONTRATACIO not
N DATE 25 0..9 null
not
SALARIO INT 25 null
FECHA_DEMORA VARCHAR 25 not null
Entidad (
TIEMPO AREGLANDO X )
Relacion (
)
DICCIONARIO DE
DATOS
NOMBRE DE LA TABLA: NUEVO
DESCRIPCION DE LA
TABLA:
Contenid Format Ke FK
Nombre Tipo Longitud o o Null y requerida
a Tabla
Atributo Atributo Atributo Dato Foranea
a..z, not
MATRICULA VARCHAR 25 0..9 null PK
UNIDADESDISPONIBLE a..z, not
S VARCHAR 23 0..9 null
a..z,
0..9
0..9
Entidad (
Las relaciones Con Otras Tablas X )
Relacion (
)
DICCIONARIO DE
DATOS
VIEJO
14. NOMBRE DE LA TABLA:
DESCRIPCION DE LA
TABLA:
Contenid Format Ke FK
Nombre Tipo Longitud o o Null y requerida
a Tabla
Atributo Atributo Atributo Dato Foranea
a..z, not
MATRICULA VARCHAR 25 0..9 null PK
KILOMETROSRECORRID a..z, not
OS VARCHAR 25 0..9 null
a..z,
0..9
0..9
Entidad (
Las relaciones Con Otras Tablas X )
Relacion (
) N:1
DICCIONARIO DE
DATOS
NOMBRE DE LA TABLA:
DESCRIPCION DE LA
TABLA:
Contenid Format Ke FK
Nombre Tipo Longitud o o Null y requerida
a Tabla
Atributo Atributo Atributo Dato Foranea
a..z, not
MATRICULA_REPARA VARCHAR 25 0..9 null PK
a..z, not FK
DNI_MECANICO VARCHAR 25 0..9 null requerida
a..z,
0..9
0..9
15. Entidad (
Las relaciones Con Otras Tablas X )
Relacion ( N:N )
CREATE TABLE CLIENTE
(
DN VARCHAR(25),
NOMBRE VARCHAR(25),
APELLIDOS VARCHAR(500),
DIRECCION VARCHAR(25),
TELEFONO VARCHAR(25),
PRIMARY KEY
(
DN
)
);
CREATE TABLE MECANICO
(
17. CREATE TABLE VIEJO
(
MATRICULA VARCHAR(25),
KILOMETROSRECORRIDO VARCHAR(25),
PRIMARY KEY
(
MATRICULA
),
FOREIGN KEY
(
MATRICULA
)
REFERENCES COCHES
(
MATRICULA
)
);
CREATE TABLE REPARA
(
MATRICULA VARCHAR(25),
DNI_MECANICO VARCHAR(25),
PRIMARY KEY
(
MATRICULA,
DNI_MECANICO
),
FOREIGN KEY
(
MATRICULA
)
REFERENCES COCHES
(
MATRICULA
),
FOREIGN KEY
(
DNI_MECANICO
)
REFERENCES MECANICO
(
DNI_MECANICO
)
);
ELECTRODOMESTICOS.
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.
18. 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.
DICCIONARIO DE DATOS
NOMBRE DE LA TABLA: COMPONENTE
DESCRIPCION DE LA
TABLA:
Nombre Tipo Longitud Formato Null Key FK requerida
a Tabla
Atributo Atributo Atributo Dato Foranea
codigo_compo varchar 23 a..z, 0..9 not null PK
cif varchar 25 a..z, 0..9 not null FK requerida
nombre varchar 25 a..z, 0..9 not null
especificaciones varchar 33 0..9 not null
Las relaciones Con Otras Tablas Entidad ( X )
Relacion ( N:N
)
DICCIONARIO DE DATOS
NOMBRE DE LA TABLA: FABRICANTE
DESCRIPCION DE LA
TABLA:
19. Nombre Tipo Longitud Formato Null Key FK requerida
a Tabla
Atributo Atributo Atributo Dato Foranea
cif varchar 25 a..z, 0..9 not null PK
domiciliosocial varchar 56 a..z, 0..9 not null
a..z, 0..9
0..9
Las relaciones Con Otras Tablas Entidad ( X )
DICCIONARIO DE DATOS
NOMBRE DE LA TABLA: COMPONENTES
DESCRIPCION DE LA
TABLA:
Nombre Tipo Longitud Formato Null Key FK requerida
a Tabla
Atributo Atributo Atributo Dato Foranea
codigo_compo varchar 23 a..z, 0..9 not null PK
codigo varchar 23 a..z, 0..9 not null FK requerida
a..z, 0..9
0..9
Las relaciones Con Otras Tablas Entidad ( X )
Relacion ( N:N
)
DICCIONARIO DE DATOS
NOMBRE DE LA TABLA: TIPOELECTRODOMESTICO
20. DESCRIPCION DE LA
TABLA:
Nombre Tipo Longitud Formato Null Key FK requerida
a Tabla
Atributo Atributo Atributo Dato Foranea
codigo_electrodomestico varchar 26 a..z, 0..9 not null PK
nombre varchar 100 a..z, 0..9 not null
caracteristicas varchar 22 a..z, 0..9
0..9
Las relaciones Con Otras Tablas Entidad ( X )
DICCIONARIO DE DATOS
NOMBRE DE LA TABLA: APARATO
DESCRIPCION DE LA
TABLA:
Nombre Tipo Longitud Formato Null Key FK requerida
a Tabla
Atributo Atributo Atributo Dato Foranea
codigo varchar 23 a..z, 0..9 not null PK
codigo_electrodomestico varchar 26 a..z, 0..9 not null FK requerida
descripcion varchar 15 a..z, 0..9 not null
0..9
Las relaciones Con Otras Tablas Entidad ( X )
Relacion ( N:N
)
24. (
CODIGO
)
REFERENCES APARATO
(
CODIGO
)
);
VARIAS RELACIONES
Para los siguientes enunciados identifique las entidades y sus relaciones.
a. Una persona puede comprar una o muchas casas, Una casa debe ser propiedad de una sola persona.
b. Un cliente debe comprar uno o muchos productos, Un producto debe ser comprado por un cliente.
c. Un proveedor puede proveer uno o más productos, Un producto debe ser provisto por uno o más proveedores.
d. Un empleado puede estar a cargo de uno o muchos empleados, Un empleado debe ser subordinado de un empleado.
e. Un investigador puede hacer muchas observaciones, Una observación debe ser hecha por un investigador.
f. Un territorio puede pertenecer a una comunidad, Una comunidad debe habitar en un territorio.
g. Una hembra puede ser la madre de muchos chimpancés. Un chimpancé debe ser hijo de una hembra.
h. Un libro puede ser escrito por uno o muchos autores. Un autor puede escribir muchos libros.
i. Un estudiante está matriculado en muchos cursos. En un curso hay muchos estudiantes matriculados.
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.
33. )
REFERENCES AGENTE
(
COD_AGENTE
),
FOREIGN KEY
(
COD_AREA
)
REFERENCES AREAS
(
COD_AREA
)
);
CREATE TABLE VENDER
(
CODIGO VARCHAR(20),
COD_AREA VARCHAR(10),
PRIMARY KEY
(
CODIGO,
COD_AREA
),
FOREIGN KEY
(
CODIGO
)
REFERENCES PRODUCT
(
CODIGO
),
FOREIGN KEY
(
COD_AREA
)
REFERENCES AREAS
(
COD_AREA
)
);
PRESTAMOS
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.
34. 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.
DICCIONARIO DE DATOS prestamoscolombia
NOMBRE DE LA
TABLA: codeudor
DESCRIPCION DE LA
TABLA:
Longitu Contenid Format
Nombre Tipo d o o Null Key
Atribut
Atributo Atributo o Dato
a..z, not
cedulacodeudor varchar 24 0..9 null PK
a..z, not
nombre varchar 25 0..9 null
a..z, not
telefono_codeu varchar 25 0..9 null
not
direccion varchar 14 0..9 null
not
posiblecliente varhcar 25 null
Las relaciones Con Otras Tablas Entidad ( X )
RELACION N:1
DICCIONARIO DE DATOS
NOMBRE DE LA
TABLA:
35. DESCRIPCION DE LA
TABLA:
Longitu Contenid Format
Nombre Tipo d o o Null Key
Atribut
Atributo Atributo o Dato
a..z, not
cod_empresa varchar 20 0..9 null PK
a..z, not
perso_contacto varchar 25 0..9 null
a..z, not
direccionempresa varchar 45 0..9 null
not
numeroempleados varchar 25 0..9 null
not
convenios varchar 15 null
Las relaciones Con Otras Tablas Entidad ( X )
Relacion ( N:N
) N:1
DICCIONARIO DE DATOS
NOMBRE DE LA
TABLA: modalidad prestamo
DESCRIPCION DE LA
TABLA:
Longitu Contenid Format
Nombre Tipo d o o Null Key
Atribut
Atributo Atributo o Dato
a..z, not
cod_modalidad varchar 25 0..9 null PK
a..z, not
tipomodalidad varchar 24 0..9 null
a..z, not
plazomax varchar 25 0..9 null
not
tasainteres varchar 25 0..9 null
36. Las relaciones Con Otras Tablas Entidad ( X )
Relacion ( N:N
) N:1
DICCIONARIO DE DATOS
NOMBRE DE LA
TABLA:
DESCRIPCION DE LA
TABLA:
Longitu Contenid Format
Nombre Tipo d o o Null Key
Atribut
Atributo Atributo o Dato
a..z, not
cod_modalidad varchar 14 0..9 null
a..z, not
cod_prestamos varchar 15 0..9 null
a..z,
0..9
0..9
Las relaciones Con Otras Tablas Entidad ( X )
Relacion ( N:N )
DICCIONARIO DE DATOS
NOMBRE DE LA
TABLA: prestamo
DESCRIPCION DE LA
TABLA:
37. Longitu Contenid Format
Nombre Tipo d o o Null Key
Atribut
Atributo Atributo o Dato
a..z, not
codigo_presta varchar 14 0..9 null PK
a..z, not
cedula varchar 15 0..9 null
a..z, not
cedulacodeudor varchar 24 0..9 null
not
un_prestamo varchar 25 0..9 null
not
fechainicio varchar 25 null
not
valorprestamos varchar 14 null
not
cuota mensual varchar 15 null
not
plazo meses varchar 15 null
DICCIONARIO DE DATOS
NOMBRE DE LA
TABLA: Socios
DESCRIPCION DE LA
TABLA:
Longitu Contenid Format
Nombre Tipo d o o Null Key
Atribut
Atributo Atributo o Dato
a..z, not
cedula varchar 15 0..9 null PK
a..z, not
cod_empresa varchar 20 0..9 null
a..z, not
nombre varchar 30 0..9 null
not
telefono varchar 50 0..9 null
direccion varchar 25 not
38. null
not
celular varchar 15 null
not
correo varchar 20 null
not
salariomensual varchar 20 null
Las relaciones Con Otras Tablas Entidad ( X )
Relacion ( N:N )
PRESTAMOS
41. ),
FOREIGN KEY
(
CEDULACODEUDOR
)
REFERENCES CODEUDOR
(
CEDULACODEUDOR
)
);
CREATE TABLE PERTENECE
(
COD_MODALIDAD VARCHAR(25),
CODIGO_PRESTA VARCHAR(14),
PRIMARY KEY
(
COD_MODALIDAD,
CODIGO_PRESTA
),
FOREIGN KEY
(
COD_MODALIDAD
)
REFERENCES MODALIDADPRESTAMO
(
COD_MODALIDAD
),
FOREIGN KEY
(
CODIGO_PRESTA
)
REFERENCES PRESTAMO
(
CODIGO_PRESTA
)
);
POLICIA NACIONAL
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.
42. •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
POLICIA NACIONAL
NOMBRE DE LA
TABLA: ARMA
DESCRIPCION DE LA
TABLA:
FK
Longitu Contenid Format requerid
Nombre Tipo d o o Null Key a
Atribut a Tabla
Atributo Atributo o Dato Foranea
43. a..z, NOT
CODIGOARMA VARCHAR 25 0..9 NULL PK
FK
a..z, NOT requerid
CEDULA varchar 25 0..9 NULL a
a..z, NOT
CLASE varchar 23 0..9 NULL
NOT
NOMBRE varchar 25 0..9 NULL
1:N
Las relaciones Con Otras Tablas Entidad ( X )
Las relaciones Con Otras Tablas Entidad ( X )
Relacion ( )
NOMBRE DE LA
TABLA: ARRESTAR
DESCRIPCION DE LA
TABLA:
FK
Longitu Contenid Format requerid
Nombre Tipo d o o Null Key a
Atribut a Tabla
Atributo Atributo o Dato Foranea
a..z, NOT
COD_CASO VARCHAR 20 0..9 NULL PK
FK
a..z, NOT requerid
CEDULA varchar 25 0..9 NULL a
a..z,
0..9
0..9
44. Las relaciones Con Otras Tablas Entidad ( X )
Las relaciones Con Otras Tablas Entidad ( X )
1:N Relacion ( )
NOMBRE DE LA
TABLA: CELDA
DESCRIPCION DE LA
TABLA:
FK
Longitu Contenid Format requerid
Nombre Tipo d o o Null Key a
Atribut a Tabla
Atributo Atributo o Dato Foranea
a..z, NOT
CODIGO_CELDA VARCHAR 25 0..9 NULL PK
a..z, NOT
UBICACION varchar 23 0..9 NULL
a..z, NOT
0..9 NULL
NOT
0..9 NULL
1:N
Las relaciones Con Otras Tablas Entidad ( X )
Las relaciones Con Otras Tablas Entidad ( X )
Relacion ( )
NOMBRE DE LA DELICUENT
TABLA: E
DESCRIPCION DE LA
TABLA:
45. FK
Longitu Contenid Format requerid
Nombre Tipo d o o Null Key a
Atribut a Tabla
Atributo Atributo o Dato Foranea
CEDULA_DELICUEN a..z, NOT
TE VARCHAR 25 0..9 NULL PK
FK
a..z, NOT requerid
COD_CASO varchar 20 0..9 NULL a
FK
a..z, NOT requerid
CODIGO_CELDA varchar 25 0..9 NULL a
NOT
NOMBRE varchar 23 0..9 NULL
TELEFONO VARCHAR 23
N:N
Las relaciones Con Otras Tablas Entidad ( X )
Las relaciones Con Otras Tablas Entidad ( X )
Relacion ( )
NOMBRE DE LA
TABLA: JEFES
DESCRIPCION DE LA
TABLA:
FK
Longitu Contenid Format requerid
Nombre Tipo d o o Null Key a
Atribut a Tabla
Atributo Atributo o Dato Foranea
CEDULA VARCHAR 20 a..z, NOT PK
46. 0..9 NULL
a..z, NOT
NOMBRE_JEFE varchar 25 0..9 NULL
a..z, NOT
RANGO varchar 20 0..9 NULL
NOT
FUNCION varchar 20 0..9 NULL
1:N
Las relaciones Con Otras Tablas Entidad ( X )
NOMBRE DE LA
TABLA: POLICIAS
DESCRIPCION DE LA
TABLA:
FK
Longitu Contenid Format requerid
Nombre Tipo d o o Null Key a
Atribut a Tabla
Atributo Atributo o Dato Foranea
47. a..z, NOT
CEDULA VARCHAR 25 0..9 NULL PK
FK
a..z, NOT requerid
CEDULA_1 varchar 20 0..9 NULL a
a..z, NOT
NOMBRE varchar 24 0..9 NULL
NOT
CATEGORIA varchar 24 0..9 NULL
FUNCIONES VARCHAR 23
HABILIDADARMAS VARCHAR 25
N:N
Las relaciones Con Otras Tablas Entidad ( X )
CREATE TABLE JEFES
(
CEDULA VARCHAR(20),
NOMBRE_JEFE VARCHAR(25),
RANGO VARCHAR(25),
FUNCION VARCHAR(25),
PRIMARY KEY
(
CEDULA
)
);
CREATE TABLE CELDA
(
CODIGO_CELDA VARCHAR(25),
50. (
COD_CASO
),
FOREIGN KEY
(
CEDULA
)
REFERENCES POLICIAS
(
CEDULA
)
);
MINI AEROPUERTO
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.
AVIONES
ALMACENA LA INFORMACION DE CADA AVION PILOTEADO, GUARDADO EN LOS ANGARES
Longitu Contenid Format FK
Nombre Tipo d o o Null Key requerida
Atribut a Tabla
Atributo Atributo o Dato Foranea
Cadena a..z,
NUMERO_AVION Caracteres 15 0..9 No PK
Cadena a..z,
MODELO_AVION Caracteres 4 0..9 No
Numeros
PESO_AVION Enteros enteros No
Numeros
celular del alumno Enteros enteros No
Entidad (
X )
inscripcion (N:N) Relacion (
51. )
HANGARES
ALMACENA LA INFORMACION DE CADA
HANAR
Longitu Contenid Format FK
Nombre Tipo d o o Null Key requerida
Atribut a Tabla
Atributo Atributo o Dato Foranea
Cadena a..z,
NUMERO_HANGAR Caracteres 10 0..9 No PK
Numeros a..z,
CAPACIDAD_HANGAR Enteros 4 0..9 No
LOCALIZACION_HAN
GAR enteros No
Entidad (
X )
Relacion (
inscripcion (N:N) )
52. PERSONAS
ALMACENA LA INFORMACION DE CADA
PERSONA
Longitu Contenid Format FK
Nombre Tipo d o o Null Key requerida
Atribut a Tabla
Atributo Atributo o Dato Foranea
Cadena
NSS Caracteres 12 0..9 No PK
Cadena a..z,
NOMBRE_PERSONA Caracteres 30 0..9 No
Cadena a..z,
APELLIDO_PERSONA Caracteres 30 0..9 No
Cadena a..z,
12
TELEFONO_PERSONA Caracteres 0..9 No
Cadena a..z,
5O
DIRECCION_PERSONA Caracteres 0..10 no
Entidad (
X )
Relacion (
inscripcion (1:N) )
PARQUEAR
ALMACENA LA INFORMACION DE CADA AVION PARQUEADO
Longitu Contenid Format FK
Nombre Tipo d o o Null Key requerida
53. Atribut a Tabla
Atributo Atributo o Dato Foranea
YY-
MM-
FECHA_INGERESO Data time DD No
YY-
MM-
FECHA_SALIDA Data time DD No
Entidad (
)
inscripcion (1:N) Relacion ( X )
PILOTO
ALMACENA LA INFORMACION DE CADA AVION PARQUEADO
Longitu Contenid Format FK
Nombre Tipo d o o Null Key requerida
Atribut a Tabla
Atributo Atributo o Dato Foranea
Cadena
NUMERO_LICENCIA Caracteres 12 0..9 No
a..z,
FECHA_SALIDA text 0..9 No
Cadena
NSS Caracteres 12 0..9 No PK
Entidad (
X )
Relacion (
inscripcion (N:N) )
EMPLEADO
54. ALMACENA LA INFORMACION DE CADA EMPLEADO
Longitu Contenid Format FK
Nombre Tipo d o o Null Key requerida
Atribut a Tabla
Atributo Atributo o Dato Foranea
SALARIO_EMPLEADO Money No
TURNO_EMPLEADO Date time No
Cadena
NSS Caracteres 12 0..9 No PK
Entidad ( X
)
Relacion (
inscripcion (N:N) )
PROPIETARIO
ALMACENA LA INFORMACION DE CADA PROPIETARIO
Longitu Contenid Format FK
Nombre Tipo d o o Null Key requerida
Atribut a Tabla
Atributo Atributo o Dato Foranea
Cadena
NSS Caracteres 12 0..9 No PK
No
Entidad (
X )
Relacion (
inscripcion (N:N) )
55. PILOTEAR
Longitu Contenid Format FK
Nombre Tipo d o o Null Key requerida
Atribut a Tabla
Atributo Atributo o Dato Foranea
Cadena
NUMERO_AVION Caracteres 15 0..9 No PK
Cadena
NSS Caracteres 12 0..9 No PK
Entidad (
)
inscripcion (N:N) Relacion ( X )
TRABAJAR
Longitu Contenid Format FK
Nombre Tipo d o o Null Key requerida
Atribut a Tabla
Atributo Atributo o Dato Foranea
Cadena
NUMERO_AVION Caracteres 15 0..9 No PK
NSS Cadena 12 0..9 No PK
56. Caracteres
Entidad (
)
inscripcion (N:N) Relacion ( X )
COMPRA
Longitu Contenid Format FK
Nombre Tipo d o o Null Key requerida
Atribut a Tabla
Atributo Atributo o Dato Foranea
Cadena
NUMERO_AVION Caracteres 15 0..9 No PK
Cadena
NSS Caracteres 12 0..9 No PK
Entidad (
)
inscripcion (N:N) Relacion ( X )
61. NSS
),
FOREIGN KEY
(
NUMERO_AVION
)
REFERENCES AVIONES
(
NUMERO_AVION
)
);
EMPEADOS
Lon Con For N K FK
git teni mat u e requ
Nombre Tipo ud do o ll y erida
a
Tabl
Atr a
Atrib ibu Dat Fora
Atributo uto to o nea
Cade
na
CODIGO_E Carac a..z, N P
MPLEADO teres 15 0..9 o K
Cade
na
NOMBRE_ Carac a..z, N
EMPELADO teres 30 0..9 o
Cade
DIRECCION na a..z,
_EMPELAD Carac 0..1 N
O teres 20 0 o
Cade
TELEFONO na a..z,
_EMPLEAD Carac 0..1 N
O teres 12 1 o
Entidad (
X )
inscripcion Relacion (
(N:1) )
62. SERVIIOS_PRESTAD
OS
Lon Con For N K FK
git teni mat u e requ
Nombre Tipo ud do o ll y erida
a
Tabl
Atr a
Atrib ibu Dat Fora
Atributo uto to o nea
Cade
na
CODIGO_S Carac a..z, N P
ERVICIO teres 2 0..9 o K
PRECIO_PO Mone N
R_MES y o
Cade
EMPRESA_ na a..z,
CONTRATA Carac 0..1 N
DORA teres 20 0 o
Entidad (
X )
inscripcion Relacion (
(1:N) )
EMPRESA_
CLIENTE
Nombre Tipo Lon Con For N K FK
63. git teni mat u e requ
ud do o ll y erida
a
Tabl
Atr a
Atrib ibu Dat Fora
Atributo uto to o nea
Cade
na
Carac a..z, N P
NIT teres 20 0..9 o K
Cade
na a..z,
NOMBRE_ Carac 0..1 N
EMPRESA teres 20 0 o
Cade
na a..z,
DIRECCION Carac 0..1 N
_EMPRESA teres 20 1 o
Cade
na
TELEFONO Carac 0..1
_EMPRESA teres 12 2
Entidad (
X )
inscripcion Relacion (
(1:N) )
PROYECTO
S
Lon Con For N K FK
git teni mat u e requ
Nombre Tipo ud do o ll y erida
Atr a
Atrib ibu Dat Tabl
Atributo uto to o a
64. Fora
nea
Cade
na
CODIGO_P Carac a..z, N P
ROYECTO teres 20 0..9 o K
Cade
na a..z,
NOMBRE_ Carac 0..1 N
PROYECTO teres 20 0 o
Cade
na a..z,
ESFUERZO_ Carac 0..1 N
AL_MES teres 20 1 o
Entidad (
X )
Relacion (
)
DIRECTIVO
Lon Con For N K FK
git teni mat u e requ
Nombre Tipo ud do o ll y erida
a
Tabl
Atr a
Atrib ibu Dat Fora
Atributo uto to o nea
PERSONAL N P
_A_CARGO Int 0..9 o K
Cade
na
CODIGO_E Carac a..z, N P
MPLEADO teres 15 0..9 o K
65. inscripcion Entidad (
(1:N) X )
Relacion (
)
PLANILLA
Lon Con For N K FK
git teni mat u e requ
Nombre Tipo ud do o ll y erida
a
Tabl
Atr a
Atrib ibu Dat Fora
Atributo uto to o nea
Cade
na
CODIGO_E Carac a..z, N P
MPLEADO teres 15 0..9 o K
Cade
na
ESPECIALID Carac a..z, N
AD teres 20 0..9 o
inscripcion Entidad (
(1:N) X )
Relacion (
)
ESTRATEGI
CO
66. Lon Con For N K FK
git teni mat u e requ
Nombre Tipo ud do o ll y erida
a
Tabl
Atr a
Atrib ibu Dat Fora
Atributo uto to o nea
Cade
na
CODIGO_E Carac a..z, N P
MPLEADO teres 15 0..9 o K
Cade
na
PLAZO_EJE Carac a..z, N
CUCION teres 20 0..9 o
inscripcion Entidad (
(1:N) X )
Relacion (
)
DESARROL
LO
Lon Con For N K FK
git teni mat u e requ
Nombre Tipo ud do o ll y erida
Atr a
Atrib ibu Dat Tabl
Atributo uto to o a
67. Fora
nea
Cade
na
CODIGO_E Carac a..z, N P
MPLEADO teres 15 0..9 o K
PRESUPUE Mone N
STO y o
inscripcion Entidad (
(1:N) X )
Relacion (
)
PROYECTOS
Dado el siguiente enunciado obtén el modelo ERE, relacional.
Una empresa de servicios quiere informatizar su gestión en lo referente su personal, proyectos y los servicios que presta a otras
empresas.
Respecto al personal de la empresa, se almacenará un código asignado por el departamento de Recursos Humanos, el nombre,
dirección y teléfono así como el tipo de actividad dentro de la empresa de servicios: directivo o plantilla. Únicamente aquel
personal que realice funciones de directivo tendrá a su cargo personal. Interesa conocer qué directivo tiene a su cargo qué
personal. Hay que tener en cuenta que un directivo puede tener a su cargo a otros directivos y que cada persona de la empresa
sólo tiene un directivo como jefe directo. En cuanto al personal que aparece como plantilla, se almacenará además la especialidad
en la que ejercerá sus funciones. Los directivos siempre tendrán personal a su cargo y todo empleado (ya sea de plantilla o
directivo) tendrá siempre jefe. Por último, el personal que realiza funciones de directivo no aparecerá nunca como personal de
plantilla y al contrario.
En cuanto a los proyectos desarrollados por la empresa, se almacenará un código de proyecto, un nombre y el esfuerzo estimado
en personas-mes para realizarlo. Lo proyectos son de dos tipos: de desarrollo o estratégicos, sin embargo, en algunos casos, los
proyectos de desarrollo pueden ser además, estratégicos. Si un proyecto es estratégico, se almacenará además el plazo de
ejecución estimado y si es de desarrollo, el presupuesto.
Cada proyecto es gestionado por un directivo de la empresa siempre y cuando el proyecto sea estratégico. No puede haber
proyectos de este tipo sin directivo asignado. Esto no significa que todo directivo tenga un proyecto bajo su dirección. En caso
que el proyecto sea de desarrollo, se almacenará qué personal de plantilla participa en dicho proyecto y el tanto por ciento de
dedicación. Una persona de plantilla puede estar asignada a ninguno o muchos proyectos.
Respecto a los servicios que se prestan a otras empresas, la política de esta empresa en considerar a parte del personal de plantilla
como un servicio lo mismo se puede decir de los proyectos de desarrollo: algunos son servicios prestados a otras empresas. De
estos servicios se almacenará el código de servicio y el precio por mes. También se almacenará la empresa para la que se ofrece
el servicio. Hay que tener en cuenta que un servicio (ya sea personal de plantilla o un proyecto de desarrollo) siempre estará
asignado a una única empresa y que una empresa contrata uno o muchos servicios. De las empresas cliente interesa conocer el
nombre, nit, dirección, teléfono.
EMPEADOS
68. Nombre Tipo Longitud Contenido Formato Null Key FK requer
a Tabla
Atributo Atributo Atributo Dato Foranea
CODIGO_EMPLEADO Cadena Caracteres 15 a..z, 0..9 No PK
NOMBRE_EMPELADO Cadena Caracteres 30 a..z, 0..9 No
DIRECCION_EMPELADO Cadena Caracteres 20 a..z, 0..10 No
TELEFONO_EMPLEADO Cadena Caracteres 12 a..z, 0..11 No
Entidad ( X
)
Relacion (
inscripcion (N:1) )
SERVIIOS_PRESTADOS
Nombre Tipo Longitud Contenido Formato Null Key FK requer
a Tabla
Atributo Atributo Atributo Dato Foranea
CODIGO_SERVICIO Cadena Caracteres 2 a..z, 0..9 No PK
PRECIO_POR_MES Money No
EMPRESA_CONTRATADORA Cadena Caracteres 20 a..z, 0..10 No
Entidad ( X
)
Relacion (
inscripcion (1:N) )
69. EMPRESA_CLIENTE
Nombre Tipo Longitud Contenido Formato Null Key FK requer
a Tabla
Atributo Atributo Atributo Dato Foranea
NIT Cadena Caracteres 20 a..z, 0..9 No PK
NOMBRE_EMPRESA Cadena Caracteres 20 a..z, 0..10 No
DIRECCION_EMPRESA Cadena Caracteres 20 a..z, 0..11 No
TELEFONO_EMPRESA Cadena Caracteres 12 0..12
Entidad ( X
)
Relacion (
inscripcion (1:N) )
PROYECTOS
Nombre Tipo Longitud Contenido Formato Null Key FK requer
a Tabla
Atributo Atributo Atributo Dato Foranea
CODIGO_PROYECTO Cadena Caracteres 20 a..z, 0..9 No PK
NOMBRE_PROYECTO Cadena Caracteres 20 a..z, 0..10 No
ESFUERZO_AL_MES Cadena Caracteres 20 a..z, 0..11 No
Entidad ( X
)
Relacion (
)
70. DIRECTIVO
Nombre Tipo Longitud Contenido Formato Null Key FK requer
a Tabla
Atributo Atributo Atributo Dato Foranea
PERSONAL_A_CARGO Int 0..9 No PK
CODIGO_EMPLEADO Cadena Caracteres 15 a..z, 0..9 No PK
Entidad ( X
inscripcion (1:N) )
Relacion (
)
PLANILLA
Nombre Tipo Longitud Contenido Formato Null Key FK requer
a Tabla
Atributo Atributo Atributo Dato Foranea
CODIGO_EMPLEADO Cadena Caracteres 15 a..z, 0..9 No PK
ESPECIALIDAD Cadena Caracteres 20 a..z, 0..9 No
Entidad ( X
inscripcion (1:N) )
Relacion (
)
71. ESTRATEGICO
Nombre Tipo Longitud Contenido Formato Null Key FK requer
a Tabla
Atributo Atributo Atributo Dato Foranea
CODIGO_EMPLEADO Cadena Caracteres 15 a..z, 0..9 No PK
PLAZO_EJECUCION Cadena Caracteres 20 a..z, 0..9 No
Entidad ( X
inscripcion (1:N) )
Relacion (
)
DESARROLLO
Nombre Tipo Longitud Contenido Formato Null Key FK requer
a Tabla
Atributo Atributo Atributo Dato Foranea
CODIGO_EMPLEADO Cadena Caracteres 15 a..z, 0..9 No PK
PRESUPUESTO Money No
Entidad ( X
inscripcion (1:N) )
Relacion (
)
76. REFERENCES PLANILLA
(
CODIGO_EMPLEADO
)
);
CREATE TABLE ESTRATEGICO
(
CODIGO_PROYECTO VARCHAR(20),
CODIGO_EMPLEADO VARCHAR(15),
PLAZO_EJECUCION VARCHAR(20),
PRIMARY KEY
(
CODIGO_PROYECTO
),
FOREIGN KEY
(
CODIGO_PROYECTO
)
REFERENCES PROYECTOS
(
CODIGO_PROYECTO
),
FOREIGN KEY
(
CODIGO_EMPLEADO
)
REFERENCES DIRECTIVO
(
CODIGO_EMPLEADO
)
);
ALBAÑIL
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.
77. 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.
ALBAÑIL
Nombre Tipo Longitud Formato Null Key
Atributo Atributo Atributo Dato
Cadena
DNI_ALBAÑIL Caracteres 20 a..z, 0..9 No PK
Cadena
NUMERO_S_SOCIAL Caracteres 20 a..z, 0..9 No
Cadena
NOMBRE Caracteres 15 a..z, 0..10 No
Cadena
APELLIDO Caracteres 15 a..z, 0..11 No
FECHA_NACIMIENTO Datetime YY-MM-DD No
Cadena
TELEFONO_FIJO Caracteres 10 0..9 No
Cadena
TELEFENO_CELULAR Caracteres 10 0..10 No
Entidad ( X
)
Relacion (
inscripcion (N:1) )
Nombre Tipo Longitud Formato Null Key
Atributo Atributo Atributo Dato
Cadena
CODIGO_INTERNO Caracteres 15 a..z, 0..9 No PK
Cadena
NOMBRE_CUADRILLA Caracteres 15 a..z, 0..9 No
LOCALIDAD_PRINCIPAL Text a..z, 0..10 No
Entidad ( X
)
Relacion (
inscripcion (1:N) )
78. Nombre Tipo Longitud Formato Null Key
Atributo Atributo Atributo Dato
SUELDO Money No
Cadena
DNI_ALBAÑIL Caracteres 20 a..z, 0..9 No PK
Entidad ( )
Relacion (
)
PEON
Nombre Tipo Longitud Formato Null Key
Atributo Atributo Atributo Dato
Cadena
DNI_ALBAÑIL Caracteres 20 a..z, 0..9 No PK
Cadena
NACIONALIDAD Caracteres 20 a..z, 0..9 No
Entidad ( )
Relacion (
)
79. GAFAS
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.
CREATE TABLE PERSONAS
(
82. CREATE TABLE GAFAS_SOL_GRADUADAS
(
CODIGO_PRODUCTO VARCHAR(20),
NIVEL_GRADUAION BIGINT,
PRIMARY KEY
(
CODIGO_PRODUCTO
),
FOREIGN KEY
(
CODIGO_PRODUCTO
)
REFERENCES GAFAS
(
CODIGO_PRODUCTO
)
);
PRODUCTOS
Nombre Tipo Longitud Contenido Formato Null Key FK requerida
a Tabla
Atributo Atributo Atributo Dato Foranea
CODIGO_PRODUCTO Cadena Caracteres 20 a..z, 0..9 No PK
PRECIO_PRODUCTO Money No
MARCA_PRODUCTO Cadena Caracteres 20 a..z, 0..10 No
Entidad ( X )
Relacion (
inscripcion (1:N) )
LENTES
Nombre Tipo Longitud Contenido Formato Null Key FK requerida
Atributo Atributo Atributo Dato a Tabla