SlideShare uma empresa Scribd logo
1 de 66
TALLER DE BASE DE DATOS




AGUILAR GONZALEZ JOSE ALEXANDER
VEGA DIAZ BRAYAN ANTONIO




INSTITUTO TOLIMENSE DE EDUCACION SUPERIOR
“ITFIP”
INGENIERIA Y CIENCIAS AGRO-INDUSTRIALES
SISTEMAS Y COMPUTACION III
DISEÑO DE BASE DEDATOS
ESPINAL_TOLIMA
2012



                             1
TALLER DE BASE DE DATOS




AGUILAR GONZALEZ JOSE ALEXANDER
VEGA DIAZ BRAYAN ANTONIO



“EL VERDADERO HEROÍSMO CONSISTE EN CONVERTIR LOS SUEÑOS EN
REALIDADES Y LAS IDEAS EN HECHOS”




DOCENTE: NAYIBE SANCHEZ DE LEON




INSTITUTO TOLIMENSE DE EDUCACION SUPERIOR
“ITFIP”
INGENIERIA Y CIENCIAS AGRO-INDUSTRIALES
SISTEMAS Y COMPUTACION III
DISEÑO DE BASE DEDATOS
ESPINAL_TOLIMA
2012




                             2
TABLA DE CONTENIDOS



Introducción…………………………………………………………… pág. 4


Objetivo general ……………………………………………………… pág. 5


Objetivos específicos………………………………………………… pág. 6

EJERCICIO N° 1………………….……………………………………… pág. 7




                          3
INTRODUCCIÓN

A continuación se presentara una serie de ejercicios de la asignatura de
diseño de base de datos. Donde encontraras el modelo entidad relación,
modelo relacional, los diccionarios de datos de cada una de las tablas de las
bases de datos, el script de MYSQL. Espero que este taller le ayude a
despejar dudas.




                                     4
JUSTIFICACION


Este trabajo se realizo con el fin de analizar la creación de las base de datos
desde su análisis hasta la creación del el Script en MYSQL. Teniendo en
cuenta que para el diseño de base de datos es fundamental tener el modelo
relacional y el diccionario de datos de cada una de las tablas de cada base
de datos.




                                      5
OBJETIVO GENERAL



   Analizar la construcción de bases de datos partiendo desde el análisis
    del diseño hasta la construcción del Script en MYSQL




                                   6
OBJETIVOS ESPECÍFICOS



   Diseñar el modelo entidad relación y modelo relación

   Crear el diccionario de datos de las tablas de las bases de datos

   Generar el Script de MYSQL

   Analizar cada un de estas para una mejor comprensión del tema




                                    7
TALLER N° 1

EJERCICIO N° 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.




                                        8
Figura 1: modelo entidad relacional




                                      9
Figura 2: Modelo Relacional




                              10
EJERCICIO N°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".




                                        11
Figura 3: modelo entidad relacional




                                      12
Figura 4: Modelo Relacional




                              13
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.




                                        14
15
16
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".




                                        17
18
19
20
21
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".




                                       22
23
24
25
26
27
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.




                                      28
29
30
31
32
EJERCICIO 4.

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
34
35
36
37
38
39
40
41
42
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.




                                       43
44
45
46
47
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 enc           ierra 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




                                       48
49
50
51
52
53
TALLER N°3

EJERCICIO N°1

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 (núm. 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.




                                       54
55
56
CREATE TABLE PROPIETARIO(COD_INTER INT NOT NULL AUTO_INCREMENT, FECHA_QUE_LO_POSEE DATE NOT
NULL, PRIMARY KEY(COD_INTER))ENGINE =INNODN;

CREATE TABLE HANGAR(COD_INTERNO INT NOT NULL AUTO_INCREMENT, CAPACIDAD VARCHAR(10) NOT NULL,
LOCACION VARCHAR(10) NOT NULL, PRIMARY KEY(COD_INTERNO))ENGINE =INNODN;

CREATE TABLE TIPO_AVION(COD_INT INT NOT NULL AUTO_INCREMENT, PESO VARCHAR(1000) NOT NULL,
MODELO VARCHAR(100) NOT NULL, PRIMARY KEY(COD_INT))ENGINE =INNODN;

CREATE TABLE PERSONAS(NSS INT NOT NULL, TEL VARCHAR(12) NOT NULL, DIRECCION VARCHAR(30) NOT
NULL, PRIMARY KEY(NSS))ENGINE =INNODN;

CREATE TABLE AVION(N_AVION VARCHAR(100) NOT NULL, COD_INT INT NOT NULL AUTO_INCREMENT ,
COD_INTERNO INT NOT NULL AUTO_INCREMENT, COLOR VARCHAR(30) NOT NULL, PRIMARY KEY
(N_AVION),FOREIGN KEY(COD_INT)REFERENCES TIPO_AVION(COD_INT),FOREIGN KEY(COD_INTERNO)
REFERENCES HANGAR(COD_INTERNO))ENGINE =INNODN;

CREATE TABLE PILOTO(NSS INT, N_LICENCIA VARCHAR(100) NOT NULL, RESTRICIONES VARCHAR(100) NOT
NULL, PRIMARY KEY(NSS),FOREIGN KEY(NSS)REFERENCES PERSONAS(NSS))ENGINE =INNODN;

CREATE TABLE EMPLEADOS(NSS INT, SALARIO MONEY NOT NULL, TURNO DATETIME NOT NULL, PRIMARY KEY
(NSS),FOREIGN KEY(NSS)REFERENCES PERSONAS(NSS))ENGINE =INNODN;

CREATE TABLE TRABAJAR(NSS INT NOT NULL, N_AVION VARCHAR(100) NOT NULL, PRIMARY KEY(NSS,N_AVION),
FOREIGN KEY(NSS)REFERENCES PERSONAS(NSS),FOREIGN KEY(N_AVION)REFERENCES AVION(N_AVION))ENGINE
INNODN;

CREATE TABLE PROPIEDAD_DE(COD_INTER INT NOT NULL AUTO_INCREMENT, N_AVION VARCHAR(100) NOT
NULL, PRIMARY KEY(COD_INTER,N_AVION),FOREIGN KEY(COD_INTER)REFERENCES PROPIETARIO(COD_INTER
),FOREIGN KEY(N_AVION)REFERENCES AVION(N_AVION)) ENGINE =INNODN;




EJERCICIO 2.

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




                                               57
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.




EJERCICIO 3.

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



                                        58
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.




                                       59
60
61
62
CREATE TABLE CUADRILLA( CODIGO_INTERNO VARCHAR(10) NOT NULL, NOMBRE CHAR(20)NOT NULL,
LOCALIZACION_PRINCIPAL CHAR(12)NOT NULL, PRIMARY KEY( CODIGO_INTERNO ) )ENGINE= INNODB;

CREATE TABLE ALBAÑILES ( NUM_SEGURIDAD_SOCIAL VARCHAR (12) NOT NULL, CODIGO_INTERNO CHAR(10)
NOT NULL, NOMBRE CHAR(10)NOT NULL, APELLIDOS CHAR(10)NOT NULL, FECHA_NACIMIENTO DATE NOT NULL,
TELEFONOS VARCHAR (12) NOT NULL, PRIMARY KEY (NUM_SEGURIDAD_SOCIAL ), FOREIGN KEY (
CODIGO_INTERNO) REFERENCES CUADRILLA ( CODIGO_INTERNO ) )ENGINE= INNODB;

CREATE TABLE MAESTRO( NUM_SEGURIDAD_SOCIAL VARCHAR (12)NOT NULL, DNI CHAR(20)NOT NULL,
SUELDO CHAR(20)NOT NULL, PRIMARY KEY(NUM_SEGURIDAD_SOCIAL ), FOREIGN KEY (
NUM_SEGURIDAD_SOCIAL ) REFERENCES ALBAÑILES(NUM_SEGURIDAD_SOCIAL))ENGINE= INNODB;

CREATE TABLE PEON(NUM_SEGURIDAD_SOCIAL VARCHAR (12)NOT NULL, DNI VARCHAR(10) NOT NULL,
SUELDO MONEY NOT NULL, NACIONALIDAD VARCHAR(30) NOT NULL, PRIMARY KEY (NUM_SEGURIDAD_SOCIAL
),FOREIGN KEY(NUM_SEGURIDAD_SOCIAL) REFERENCES ALBAÑILES ( NUM_SEGURIDAD_SOCIAL ) ) ENGINE=
INNODB;




EJERCICIO 4.

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.




                                              63
64
CREATE TABLE PRODUCTOS_DE_LOS_OJITOS(COD_PRODUCTO INT NOT NULLAUTO_INCREMENT, PRECIO MONEY
NOT NULL, MARCA VARCHAR(100) OT NULL, PRIMARY KEY(COD_PRODUCTO)) ENGINE =INNODB;

CREATE TABLE CLIENTES(CODIGO INT NOT NULL AUTO_INCREMENT, NOMBRE VARCHAR(30) NOT NULL,
TELEFONO VARCHAR(12) NULL, PRIMARY KEY(CODIGO)) ENGINE = INNODB;

CREATE TABLE LENTES_DE_CONTACTO(COD_PRODUCTO INT NOT NULL AUTO_INCREMENT, TIPO CHAR(50) NOT
NULL, COLOR VARCHAR(30) NOT NULL, PRODUCTO_DE_LIMPIEZA_PARA_LENTES VARCHAR(50) NOT NULL,




                                             65
GRADUACION VARCHAR(50) NOT NUL, PRIMARY KEY(COD_PRODUCTO),FOREIGN KEY(COD_PRODUCTO)
REFERENCES PRODUCTOS_DE_LOS_OJITOS(COD_PRODUCTO))ENGINE =INNODB;

CREATE TABLE GAFAS(COD_PRODUCTO INT NOT NULL AUTO_INCREMENT, MODELO VARCHAR(4) NOT NULL,
MATERIAL_DE_FABRICACION VARCHAR(100) NOT NULL, PRIMARY KEY(COD_PRODUCTO),FOREIGN KEY(
COD_PRODUCTO)REFERENCES PRODUCTOS_DE_LOS_OJITOS(COD_PRODUCTO)) ENGINE =INNNODB;

CREATE TABLE GAFAS_DEL_SOL(COD_PRODUCTO INT NOT NULL AUTO_INCREMENT, NIVEL_FILTRO_SOLAR
VARCHAR(100) NOT NUL, PRIMARY KEY(COD_PRODUCTO),FOREIGN KEY(COD_PRODUCTO)REFERENCES GAFAS
(COD_PRODUCTO)) ENGINE = INNODB;

CREATE TABLE GAFAS_GRADUADAS(COD_PRODUCTO INT NOT NULL AUTO_INCREMENT, GRADUACION
VARCHAR(100) NOT NULL, TIPO_DE_PROBLEMAS_OCULARES VARCHAR(100) NOT NULL, PRIMARY KEY(
COD_PRODUCTO),FOREIGN KEY(COD_PRODUCTO)REFERENCES GAFAS(COD_PRODUCTO)) ENGINE_INNODB;

CREATE TABLE GAFAS_SOL(COD_PRODUCTO INT NOT NULL AUTO_INCREMENT, PRIMARY KEY(COD_PRODUCTO
),FOREIGN KEY(COD_PRODUCTO)REFERENCES GAFAS(COD_PRODUCTO))ENGINE= INNODB;

CREATE TABLE HABITUALES(CODIGO INT NOT NULL AUTO_INCREMENT, DES_DEGAFAS INT NOT NULL, PRIMARY
KEY(CODIGO),FOREIGN KEY(CODIGO)REFERENCES CLIENTES(CODIGO)) ENGINE =INNODB;

CREATE TABLE OCASIONAL(CODIGO INT NOT NULL AUTO_INCREMENT, DES_DE_GAFAS INT NOT NULL, PRIMARY
KEY(CODIGO),FOREIGN KEY(CODIGO)REFERENCES CLIENTES(CODIGO))ENGINE=INNODB;

CREATE TABLE COMPRAR(CODIGO INT NOT NULL AUTO_INCREMENT, COD_PRODUCTO INT NOT NULL
AUTO_INCREMENT, PRIMARY KEY(CODIGO,COD_PRODUCTO),FOREIGN KEY(CODIGO)REFERENCES CLIENTES(
CODIGO),FOREIGN KEY(COD_PRODUCTO)REFERENCES PRODUCTOS_DE_LOS_OJITOS(COD_PRODUCTO))
ENGINE=INNODB;




                                             66

Mais conteúdo relacionado

Mais procurados

Taller Practico 2 Base de Datos
Taller Practico 2 Base de DatosTaller Practico 2 Base de Datos
Taller Practico 2 Base de Datosjhonfredy2000
 
ejercicios diseño:_entidad relación en la creación de una BD
ejercicios diseño:_entidad relación en la creación de una BDejercicios diseño:_entidad relación en la creación de una BD
ejercicios diseño:_entidad relación en la creación de una BDJomar Burgos Palacios
 
Ejercicios en clase Unidad II
Ejercicios en clase Unidad IIEjercicios en clase Unidad II
Ejercicios en clase Unidad IILuis Caiza
 
5. Ejercicios normalización
5. Ejercicios normalización5. Ejercicios normalización
5. Ejercicios normalizaciónMarcelo Herrera
 
Transformar modelo entidad relacion a modelo logico
Transformar modelo entidad relacion a modelo logicoTransformar modelo entidad relacion a modelo logico
Transformar modelo entidad relacion a modelo logicojosecuartas
 
Ejercicios de entidad relacion (2018-2)
Ejercicios de entidad relacion (2018-2)Ejercicios de entidad relacion (2018-2)
Ejercicios de entidad relacion (2018-2)JESUSFRANCISCOFLORES1
 
Caso de uso de biblioteca
Caso de uso de bibliotecaCaso de uso de biblioteca
Caso de uso de bibliotecapersye
 
Convertir Diagrama Entidad-Relacion a Modelo Relacional.
Convertir Diagrama Entidad-Relacion a Modelo Relacional.Convertir Diagrama Entidad-Relacion a Modelo Relacional.
Convertir Diagrama Entidad-Relacion a Modelo Relacional.Erivan Martinez Ovando
 
Transformación de Modelo E-R a Modelo Relacional Ejemplo y Reporte
Transformación de Modelo E-R a Modelo Relacional Ejemplo y ReporteTransformación de Modelo E-R a Modelo Relacional Ejemplo y Reporte
Transformación de Modelo E-R a Modelo Relacional Ejemplo y ReporteNeoinquisidor
 
Ejercicios del modelo entidad relacion
Ejercicios del modelo entidad relacionEjercicios del modelo entidad relacion
Ejercicios del modelo entidad relacionCarlos CaychoChumpitaz
 
Ejercicios de base de datos
Ejercicios de base de datosEjercicios de base de datos
Ejercicios de base de datosMaria Barrios
 
Diseño Entidad Relación
Diseño Entidad RelaciónDiseño Entidad Relación
Diseño Entidad Relaciónkyaalena
 
Taller modelo entidad relacion
Taller modelo entidad relacionTaller modelo entidad relacion
Taller modelo entidad relacionAngeliik Cortes
 

Mais procurados (20)

Enunciados de casos para Bases de Datos
Enunciados de casos para Bases de DatosEnunciados de casos para Bases de Datos
Enunciados de casos para Bases de Datos
 
E3 ejercicio empresa
E3 ejercicio empresaE3 ejercicio empresa
E3 ejercicio empresa
 
Taller Practico 2 Base de Datos
Taller Practico 2 Base de DatosTaller Practico 2 Base de Datos
Taller Practico 2 Base de Datos
 
ejercicios diseño:_entidad relación en la creación de una BD
ejercicios diseño:_entidad relación en la creación de una BDejercicios diseño:_entidad relación en la creación de una BD
ejercicios diseño:_entidad relación en la creación de una BD
 
Ejercicios en clase Unidad II
Ejercicios en clase Unidad IIEjercicios en clase Unidad II
Ejercicios en clase Unidad II
 
5. Ejercicios normalización
5. Ejercicios normalización5. Ejercicios normalización
5. Ejercicios normalización
 
Transformar modelo entidad relacion a modelo logico
Transformar modelo entidad relacion a modelo logicoTransformar modelo entidad relacion a modelo logico
Transformar modelo entidad relacion a modelo logico
 
Ejercicios uml
Ejercicios umlEjercicios uml
Ejercicios uml
 
Ejercicios de entidad relacion (2018-2)
Ejercicios de entidad relacion (2018-2)Ejercicios de entidad relacion (2018-2)
Ejercicios de entidad relacion (2018-2)
 
Caso de uso de biblioteca
Caso de uso de bibliotecaCaso de uso de biblioteca
Caso de uso de biblioteca
 
Modelo de datos
Modelo de datosModelo de datos
Modelo de datos
 
Convertir Diagrama Entidad-Relacion a Modelo Relacional.
Convertir Diagrama Entidad-Relacion a Modelo Relacional.Convertir Diagrama Entidad-Relacion a Modelo Relacional.
Convertir Diagrama Entidad-Relacion a Modelo Relacional.
 
Ejercicios Entidad - Relación
Ejercicios Entidad - RelaciónEjercicios Entidad - Relación
Ejercicios Entidad - Relación
 
Transformación de Modelo E-R a Modelo Relacional Ejemplo y Reporte
Transformación de Modelo E-R a Modelo Relacional Ejemplo y ReporteTransformación de Modelo E-R a Modelo Relacional Ejemplo y Reporte
Transformación de Modelo E-R a Modelo Relacional Ejemplo y Reporte
 
Ejercicios del modelo entidad relacion
Ejercicios del modelo entidad relacionEjercicios del modelo entidad relacion
Ejercicios del modelo entidad relacion
 
Ejercicio parciall 2
Ejercicio parciall 2Ejercicio parciall 2
Ejercicio parciall 2
 
Ejercicios de base de datos
Ejercicios de base de datosEjercicios de base de datos
Ejercicios de base de datos
 
Ejercicio 10
Ejercicio 10Ejercicio 10
Ejercicio 10
 
Diseño Entidad Relación
Diseño Entidad RelaciónDiseño Entidad Relación
Diseño Entidad Relación
 
Taller modelo entidad relacion
Taller modelo entidad relacionTaller modelo entidad relacion
Taller modelo entidad relacion
 

Semelhante a Taller modelo entidad relacion (20)

Modelo Entidad Relación
Modelo Entidad RelaciónModelo Entidad Relación
Modelo Entidad Relación
 
Ejercicios modelo entidad relacion
Ejercicios modelo entidad relacionEjercicios modelo entidad relacion
Ejercicios modelo entidad relacion
 
1 ejercicio modelo mer
1 ejercicio modelo mer1 ejercicio modelo mer
1 ejercicio modelo mer
 
Enunciados%20problemas%20e R
Enunciados%20problemas%20e REnunciados%20problemas%20e R
Enunciados%20problemas%20e R
 
Practica2 bbdd er
Practica2 bbdd erPractica2 bbdd er
Practica2 bbdd er
 
Guia 02
Guia 02Guia 02
Guia 02
 
Ejercicios De Bdatos
Ejercicios De BdatosEjercicios De Bdatos
Ejercicios De Bdatos
 
Ejercicios modelo e-r-_alumno
Ejercicios modelo e-r-_alumnoEjercicios modelo e-r-_alumno
Ejercicios modelo e-r-_alumno
 
Ejercicios E-R y Normalización
 Ejercicios E-R y Normalización Ejercicios E-R y Normalización
Ejercicios E-R y Normalización
 
Diagramas E- R, Erwin Data Modeler
Diagramas E-  R, Erwin Data ModelerDiagramas E-  R, Erwin Data Modeler
Diagramas E- R, Erwin Data Modeler
 
Ejercicios Modelo Entidad Relación
Ejercicios Modelo Entidad RelaciónEjercicios Modelo Entidad Relación
Ejercicios Modelo Entidad Relación
 
Modelamiento de datos
Modelamiento de datos   Modelamiento de datos
Modelamiento de datos
 
Ejercicios de diagrama entidad relacion cursodeactualizacion2019
Ejercicios de diagrama entidad relacion cursodeactualizacion2019Ejercicios de diagrama entidad relacion cursodeactualizacion2019
Ejercicios de diagrama entidad relacion cursodeactualizacion2019
 
Ejercicios
EjerciciosEjercicios
Ejercicios
 
Ejercicios e r
Ejercicios e rEjercicios e r
Ejercicios e r
 
Base de datos delia
Base de datos deliaBase de datos delia
Base de datos delia
 
Entidad relacion
Entidad relacionEntidad relacion
Entidad relacion
 
Entidad relacion
Entidad relacionEntidad relacion
Entidad relacion
 
Modelamiento de Datos
Modelamiento de DatosModelamiento de Datos
Modelamiento de Datos
 
Ejercicios diagrama entidad relación
Ejercicios diagrama entidad relaciónEjercicios diagrama entidad relación
Ejercicios diagrama entidad relación
 

Último

Día de la Madre Tierra-1.pdf día mundial
Día de la Madre Tierra-1.pdf día mundialDía de la Madre Tierra-1.pdf día mundial
Día de la Madre Tierra-1.pdf día mundialpatriciaines1993
 
Fichas de Matemática DE SEGUNDO DE SECUNDARIA.pdf
Fichas de Matemática DE SEGUNDO DE SECUNDARIA.pdfFichas de Matemática DE SEGUNDO DE SECUNDARIA.pdf
Fichas de Matemática DE SEGUNDO DE SECUNDARIA.pdfssuser50d1252
 
EDUCACION FISICA 1° PROGRAMACIÓN ANUAL 2023.docx
EDUCACION FISICA 1°  PROGRAMACIÓN ANUAL 2023.docxEDUCACION FISICA 1°  PROGRAMACIÓN ANUAL 2023.docx
EDUCACION FISICA 1° PROGRAMACIÓN ANUAL 2023.docxLuisAndersonPachasto
 
Mapa Mental de estrategias de articulación de las areas curriculares.pdf
Mapa Mental de estrategias de articulación de las areas curriculares.pdfMapa Mental de estrategias de articulación de las areas curriculares.pdf
Mapa Mental de estrategias de articulación de las areas curriculares.pdfvictorbeltuce
 
Monitoreo a los coordinadores de las IIEE JEC_28.02.2024.vf.pptx
Monitoreo a los coordinadores de las IIEE JEC_28.02.2024.vf.pptxMonitoreo a los coordinadores de las IIEE JEC_28.02.2024.vf.pptx
Monitoreo a los coordinadores de las IIEE JEC_28.02.2024.vf.pptxJUANCARLOSAPARCANARE
 
IV SES LUN 15 TUTO CUIDO MI MENTE CUIDANDO MI CUERPO YESSENIA 933623393 NUEV...
IV SES LUN 15 TUTO CUIDO MI MENTE CUIDANDO MI CUERPO  YESSENIA 933623393 NUEV...IV SES LUN 15 TUTO CUIDO MI MENTE CUIDANDO MI CUERPO  YESSENIA 933623393 NUEV...
IV SES LUN 15 TUTO CUIDO MI MENTE CUIDANDO MI CUERPO YESSENIA 933623393 NUEV...YobanaZevallosSantil1
 
SISTEMA INMUNE FISIOLOGIA MEDICA UNSL 2024
SISTEMA INMUNE FISIOLOGIA MEDICA UNSL 2024SISTEMA INMUNE FISIOLOGIA MEDICA UNSL 2024
SISTEMA INMUNE FISIOLOGIA MEDICA UNSL 2024gharce
 
SIMULACROS Y SIMULACIONES DE SISMO 2024.docx
SIMULACROS Y SIMULACIONES DE SISMO 2024.docxSIMULACROS Y SIMULACIONES DE SISMO 2024.docx
SIMULACROS Y SIMULACIONES DE SISMO 2024.docxLudy Ventocilla Napanga
 
CIENCIAS NATURALES 4 TO ambientes .docx
CIENCIAS NATURALES 4 TO  ambientes .docxCIENCIAS NATURALES 4 TO  ambientes .docx
CIENCIAS NATURALES 4 TO ambientes .docxAgustinaNuez21
 
MODELO DE INFORME DE INDAGACION CIENTIFICA .docx
MODELO DE INFORME DE INDAGACION CIENTIFICA .docxMODELO DE INFORME DE INDAGACION CIENTIFICA .docx
MODELO DE INFORME DE INDAGACION CIENTIFICA .docxRAMON EUSTAQUIO CARO BAYONA
 
05 Fenomenos fisicos y quimicos de la materia.pdf
05 Fenomenos fisicos y quimicos de la materia.pdf05 Fenomenos fisicos y quimicos de la materia.pdf
05 Fenomenos fisicos y quimicos de la materia.pdfRAMON EUSTAQUIO CARO BAYONA
 
DETALLES EN EL DISEÑO DE INTERIOR
DETALLES EN EL DISEÑO DE INTERIORDETALLES EN EL DISEÑO DE INTERIOR
DETALLES EN EL DISEÑO DE INTERIORGonella
 
sesión de aprendizaje 4 E1 Exposición oral.pdf
sesión de aprendizaje 4 E1 Exposición oral.pdfsesión de aprendizaje 4 E1 Exposición oral.pdf
sesión de aprendizaje 4 E1 Exposición oral.pdfpatriciavsquezbecerr
 

Último (20)

Día de la Madre Tierra-1.pdf día mundial
Día de la Madre Tierra-1.pdf día mundialDía de la Madre Tierra-1.pdf día mundial
Día de la Madre Tierra-1.pdf día mundial
 
Fichas de Matemática DE SEGUNDO DE SECUNDARIA.pdf
Fichas de Matemática DE SEGUNDO DE SECUNDARIA.pdfFichas de Matemática DE SEGUNDO DE SECUNDARIA.pdf
Fichas de Matemática DE SEGUNDO DE SECUNDARIA.pdf
 
EDUCACION FISICA 1° PROGRAMACIÓN ANUAL 2023.docx
EDUCACION FISICA 1°  PROGRAMACIÓN ANUAL 2023.docxEDUCACION FISICA 1°  PROGRAMACIÓN ANUAL 2023.docx
EDUCACION FISICA 1° PROGRAMACIÓN ANUAL 2023.docx
 
Aedes aegypti + Intro to Coquies EE.pptx
Aedes aegypti + Intro to Coquies EE.pptxAedes aegypti + Intro to Coquies EE.pptx
Aedes aegypti + Intro to Coquies EE.pptx
 
PPTX: La luz brilla en la oscuridad.pptx
PPTX: La luz brilla en la oscuridad.pptxPPTX: La luz brilla en la oscuridad.pptx
PPTX: La luz brilla en la oscuridad.pptx
 
La luz brilla en la oscuridad. Necesitamos luz
La luz brilla en la oscuridad. Necesitamos luzLa luz brilla en la oscuridad. Necesitamos luz
La luz brilla en la oscuridad. Necesitamos luz
 
Mapa Mental de estrategias de articulación de las areas curriculares.pdf
Mapa Mental de estrategias de articulación de las areas curriculares.pdfMapa Mental de estrategias de articulación de las areas curriculares.pdf
Mapa Mental de estrategias de articulación de las areas curriculares.pdf
 
Monitoreo a los coordinadores de las IIEE JEC_28.02.2024.vf.pptx
Monitoreo a los coordinadores de las IIEE JEC_28.02.2024.vf.pptxMonitoreo a los coordinadores de las IIEE JEC_28.02.2024.vf.pptx
Monitoreo a los coordinadores de las IIEE JEC_28.02.2024.vf.pptx
 
IV SES LUN 15 TUTO CUIDO MI MENTE CUIDANDO MI CUERPO YESSENIA 933623393 NUEV...
IV SES LUN 15 TUTO CUIDO MI MENTE CUIDANDO MI CUERPO  YESSENIA 933623393 NUEV...IV SES LUN 15 TUTO CUIDO MI MENTE CUIDANDO MI CUERPO  YESSENIA 933623393 NUEV...
IV SES LUN 15 TUTO CUIDO MI MENTE CUIDANDO MI CUERPO YESSENIA 933623393 NUEV...
 
Earth Day Everyday 2024 54th anniversary
Earth Day Everyday 2024 54th anniversaryEarth Day Everyday 2024 54th anniversary
Earth Day Everyday 2024 54th anniversary
 
SISTEMA INMUNE FISIOLOGIA MEDICA UNSL 2024
SISTEMA INMUNE FISIOLOGIA MEDICA UNSL 2024SISTEMA INMUNE FISIOLOGIA MEDICA UNSL 2024
SISTEMA INMUNE FISIOLOGIA MEDICA UNSL 2024
 
SIMULACROS Y SIMULACIONES DE SISMO 2024.docx
SIMULACROS Y SIMULACIONES DE SISMO 2024.docxSIMULACROS Y SIMULACIONES DE SISMO 2024.docx
SIMULACROS Y SIMULACIONES DE SISMO 2024.docx
 
CIENCIAS NATURALES 4 TO ambientes .docx
CIENCIAS NATURALES 4 TO  ambientes .docxCIENCIAS NATURALES 4 TO  ambientes .docx
CIENCIAS NATURALES 4 TO ambientes .docx
 
MODELO DE INFORME DE INDAGACION CIENTIFICA .docx
MODELO DE INFORME DE INDAGACION CIENTIFICA .docxMODELO DE INFORME DE INDAGACION CIENTIFICA .docx
MODELO DE INFORME DE INDAGACION CIENTIFICA .docx
 
VISITA À PROTEÇÃO CIVIL _
VISITA À PROTEÇÃO CIVIL                  _VISITA À PROTEÇÃO CIVIL                  _
VISITA À PROTEÇÃO CIVIL _
 
05 Fenomenos fisicos y quimicos de la materia.pdf
05 Fenomenos fisicos y quimicos de la materia.pdf05 Fenomenos fisicos y quimicos de la materia.pdf
05 Fenomenos fisicos y quimicos de la materia.pdf
 
recursos naturales america cuarto basico
recursos naturales america cuarto basicorecursos naturales america cuarto basico
recursos naturales america cuarto basico
 
DETALLES EN EL DISEÑO DE INTERIOR
DETALLES EN EL DISEÑO DE INTERIORDETALLES EN EL DISEÑO DE INTERIOR
DETALLES EN EL DISEÑO DE INTERIOR
 
sesión de aprendizaje 4 E1 Exposición oral.pdf
sesión de aprendizaje 4 E1 Exposición oral.pdfsesión de aprendizaje 4 E1 Exposición oral.pdf
sesión de aprendizaje 4 E1 Exposición oral.pdf
 
Sesión La luz brilla en la oscuridad.pdf
Sesión  La luz brilla en la oscuridad.pdfSesión  La luz brilla en la oscuridad.pdf
Sesión La luz brilla en la oscuridad.pdf
 

Taller modelo entidad relacion

  • 1. TALLER DE BASE DE DATOS AGUILAR GONZALEZ JOSE ALEXANDER VEGA DIAZ BRAYAN ANTONIO INSTITUTO TOLIMENSE DE EDUCACION SUPERIOR “ITFIP” INGENIERIA Y CIENCIAS AGRO-INDUSTRIALES SISTEMAS Y COMPUTACION III DISEÑO DE BASE DEDATOS ESPINAL_TOLIMA 2012 1
  • 2. TALLER DE BASE DE DATOS AGUILAR GONZALEZ JOSE ALEXANDER VEGA DIAZ BRAYAN ANTONIO “EL VERDADERO HEROÍSMO CONSISTE EN CONVERTIR LOS SUEÑOS EN REALIDADES Y LAS IDEAS EN HECHOS” DOCENTE: NAYIBE SANCHEZ DE LEON INSTITUTO TOLIMENSE DE EDUCACION SUPERIOR “ITFIP” INGENIERIA Y CIENCIAS AGRO-INDUSTRIALES SISTEMAS Y COMPUTACION III DISEÑO DE BASE DEDATOS ESPINAL_TOLIMA 2012 2
  • 3. TABLA DE CONTENIDOS Introducción…………………………………………………………… pág. 4 Objetivo general ……………………………………………………… pág. 5 Objetivos específicos………………………………………………… pág. 6 EJERCICIO N° 1………………….……………………………………… pág. 7 3
  • 4. INTRODUCCIÓN A continuación se presentara una serie de ejercicios de la asignatura de diseño de base de datos. Donde encontraras el modelo entidad relación, modelo relacional, los diccionarios de datos de cada una de las tablas de las bases de datos, el script de MYSQL. Espero que este taller le ayude a despejar dudas. 4
  • 5. JUSTIFICACION Este trabajo se realizo con el fin de analizar la creación de las base de datos desde su análisis hasta la creación del el Script en MYSQL. Teniendo en cuenta que para el diseño de base de datos es fundamental tener el modelo relacional y el diccionario de datos de cada una de las tablas de cada base de datos. 5
  • 6. OBJETIVO GENERAL  Analizar la construcción de bases de datos partiendo desde el análisis del diseño hasta la construcción del Script en MYSQL 6
  • 7. OBJETIVOS ESPECÍFICOS  Diseñar el modelo entidad relación y modelo relación  Crear el diccionario de datos de las tablas de las bases de datos  Generar el Script de MYSQL  Analizar cada un de estas para una mejor comprensión del tema 7
  • 8. TALLER N° 1 EJERCICIO N° 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. 8
  • 9. Figura 1: modelo entidad relacional 9
  • 10. Figura 2: Modelo Relacional 10
  • 11. EJERCICIO N°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". 11
  • 12. Figura 3: modelo entidad relacional 12
  • 13. Figura 4: Modelo Relacional 13
  • 14. 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. 14
  • 15. 15
  • 16. 16
  • 17. 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". 17
  • 18. 18
  • 19. 19
  • 20. 20
  • 21. 21
  • 22. 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". 22
  • 23. 23
  • 24. 24
  • 25. 25
  • 26. 26
  • 27. 27
  • 28. 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. 28
  • 29. 29
  • 30. 30
  • 31. 31
  • 32. 32
  • 33. EJERCICIO 4. 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
  • 34. 34
  • 35. 35
  • 36. 36
  • 37. 37
  • 38. 38
  • 39. 39
  • 40. 40
  • 41. 41
  • 42. 42
  • 43. 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. 43
  • 44. 44
  • 45. 45
  • 46. 46
  • 47. 47
  • 48. 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 enc ierra 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 48
  • 49. 49
  • 50. 50
  • 51. 51
  • 52. 52
  • 53. 53
  • 54. TALLER N°3 EJERCICIO N°1 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 (núm. 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. 54
  • 55. 55
  • 56. 56
  • 57. CREATE TABLE PROPIETARIO(COD_INTER INT NOT NULL AUTO_INCREMENT, FECHA_QUE_LO_POSEE DATE NOT NULL, PRIMARY KEY(COD_INTER))ENGINE =INNODN; CREATE TABLE HANGAR(COD_INTERNO INT NOT NULL AUTO_INCREMENT, CAPACIDAD VARCHAR(10) NOT NULL, LOCACION VARCHAR(10) NOT NULL, PRIMARY KEY(COD_INTERNO))ENGINE =INNODN; CREATE TABLE TIPO_AVION(COD_INT INT NOT NULL AUTO_INCREMENT, PESO VARCHAR(1000) NOT NULL, MODELO VARCHAR(100) NOT NULL, PRIMARY KEY(COD_INT))ENGINE =INNODN; CREATE TABLE PERSONAS(NSS INT NOT NULL, TEL VARCHAR(12) NOT NULL, DIRECCION VARCHAR(30) NOT NULL, PRIMARY KEY(NSS))ENGINE =INNODN; CREATE TABLE AVION(N_AVION VARCHAR(100) NOT NULL, COD_INT INT NOT NULL AUTO_INCREMENT , COD_INTERNO INT NOT NULL AUTO_INCREMENT, COLOR VARCHAR(30) NOT NULL, PRIMARY KEY (N_AVION),FOREIGN KEY(COD_INT)REFERENCES TIPO_AVION(COD_INT),FOREIGN KEY(COD_INTERNO) REFERENCES HANGAR(COD_INTERNO))ENGINE =INNODN; CREATE TABLE PILOTO(NSS INT, N_LICENCIA VARCHAR(100) NOT NULL, RESTRICIONES VARCHAR(100) NOT NULL, PRIMARY KEY(NSS),FOREIGN KEY(NSS)REFERENCES PERSONAS(NSS))ENGINE =INNODN; CREATE TABLE EMPLEADOS(NSS INT, SALARIO MONEY NOT NULL, TURNO DATETIME NOT NULL, PRIMARY KEY (NSS),FOREIGN KEY(NSS)REFERENCES PERSONAS(NSS))ENGINE =INNODN; CREATE TABLE TRABAJAR(NSS INT NOT NULL, N_AVION VARCHAR(100) NOT NULL, PRIMARY KEY(NSS,N_AVION), FOREIGN KEY(NSS)REFERENCES PERSONAS(NSS),FOREIGN KEY(N_AVION)REFERENCES AVION(N_AVION))ENGINE INNODN; CREATE TABLE PROPIEDAD_DE(COD_INTER INT NOT NULL AUTO_INCREMENT, N_AVION VARCHAR(100) NOT NULL, PRIMARY KEY(COD_INTER,N_AVION),FOREIGN KEY(COD_INTER)REFERENCES PROPIETARIO(COD_INTER ),FOREIGN KEY(N_AVION)REFERENCES AVION(N_AVION)) ENGINE =INNODN; EJERCICIO 2. 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 57
  • 58. 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. EJERCICIO 3. 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 58
  • 59. 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. 59
  • 60. 60
  • 61. 61
  • 62. 62
  • 63. CREATE TABLE CUADRILLA( CODIGO_INTERNO VARCHAR(10) NOT NULL, NOMBRE CHAR(20)NOT NULL, LOCALIZACION_PRINCIPAL CHAR(12)NOT NULL, PRIMARY KEY( CODIGO_INTERNO ) )ENGINE= INNODB; CREATE TABLE ALBAÑILES ( NUM_SEGURIDAD_SOCIAL VARCHAR (12) NOT NULL, CODIGO_INTERNO CHAR(10) NOT NULL, NOMBRE CHAR(10)NOT NULL, APELLIDOS CHAR(10)NOT NULL, FECHA_NACIMIENTO DATE NOT NULL, TELEFONOS VARCHAR (12) NOT NULL, PRIMARY KEY (NUM_SEGURIDAD_SOCIAL ), FOREIGN KEY ( CODIGO_INTERNO) REFERENCES CUADRILLA ( CODIGO_INTERNO ) )ENGINE= INNODB; CREATE TABLE MAESTRO( NUM_SEGURIDAD_SOCIAL VARCHAR (12)NOT NULL, DNI CHAR(20)NOT NULL, SUELDO CHAR(20)NOT NULL, PRIMARY KEY(NUM_SEGURIDAD_SOCIAL ), FOREIGN KEY ( NUM_SEGURIDAD_SOCIAL ) REFERENCES ALBAÑILES(NUM_SEGURIDAD_SOCIAL))ENGINE= INNODB; CREATE TABLE PEON(NUM_SEGURIDAD_SOCIAL VARCHAR (12)NOT NULL, DNI VARCHAR(10) NOT NULL, SUELDO MONEY NOT NULL, NACIONALIDAD VARCHAR(30) NOT NULL, PRIMARY KEY (NUM_SEGURIDAD_SOCIAL ),FOREIGN KEY(NUM_SEGURIDAD_SOCIAL) REFERENCES ALBAÑILES ( NUM_SEGURIDAD_SOCIAL ) ) ENGINE= INNODB; EJERCICIO 4. 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. 63
  • 64. 64
  • 65. CREATE TABLE PRODUCTOS_DE_LOS_OJITOS(COD_PRODUCTO INT NOT NULLAUTO_INCREMENT, PRECIO MONEY NOT NULL, MARCA VARCHAR(100) OT NULL, PRIMARY KEY(COD_PRODUCTO)) ENGINE =INNODB; CREATE TABLE CLIENTES(CODIGO INT NOT NULL AUTO_INCREMENT, NOMBRE VARCHAR(30) NOT NULL, TELEFONO VARCHAR(12) NULL, PRIMARY KEY(CODIGO)) ENGINE = INNODB; CREATE TABLE LENTES_DE_CONTACTO(COD_PRODUCTO INT NOT NULL AUTO_INCREMENT, TIPO CHAR(50) NOT NULL, COLOR VARCHAR(30) NOT NULL, PRODUCTO_DE_LIMPIEZA_PARA_LENTES VARCHAR(50) NOT NULL, 65
  • 66. GRADUACION VARCHAR(50) NOT NUL, PRIMARY KEY(COD_PRODUCTO),FOREIGN KEY(COD_PRODUCTO) REFERENCES PRODUCTOS_DE_LOS_OJITOS(COD_PRODUCTO))ENGINE =INNODB; CREATE TABLE GAFAS(COD_PRODUCTO INT NOT NULL AUTO_INCREMENT, MODELO VARCHAR(4) NOT NULL, MATERIAL_DE_FABRICACION VARCHAR(100) NOT NULL, PRIMARY KEY(COD_PRODUCTO),FOREIGN KEY( COD_PRODUCTO)REFERENCES PRODUCTOS_DE_LOS_OJITOS(COD_PRODUCTO)) ENGINE =INNNODB; CREATE TABLE GAFAS_DEL_SOL(COD_PRODUCTO INT NOT NULL AUTO_INCREMENT, NIVEL_FILTRO_SOLAR VARCHAR(100) NOT NUL, PRIMARY KEY(COD_PRODUCTO),FOREIGN KEY(COD_PRODUCTO)REFERENCES GAFAS (COD_PRODUCTO)) ENGINE = INNODB; CREATE TABLE GAFAS_GRADUADAS(COD_PRODUCTO INT NOT NULL AUTO_INCREMENT, GRADUACION VARCHAR(100) NOT NULL, TIPO_DE_PROBLEMAS_OCULARES VARCHAR(100) NOT NULL, PRIMARY KEY( COD_PRODUCTO),FOREIGN KEY(COD_PRODUCTO)REFERENCES GAFAS(COD_PRODUCTO)) ENGINE_INNODB; CREATE TABLE GAFAS_SOL(COD_PRODUCTO INT NOT NULL AUTO_INCREMENT, PRIMARY KEY(COD_PRODUCTO ),FOREIGN KEY(COD_PRODUCTO)REFERENCES GAFAS(COD_PRODUCTO))ENGINE= INNODB; CREATE TABLE HABITUALES(CODIGO INT NOT NULL AUTO_INCREMENT, DES_DEGAFAS INT NOT NULL, PRIMARY KEY(CODIGO),FOREIGN KEY(CODIGO)REFERENCES CLIENTES(CODIGO)) ENGINE =INNODB; CREATE TABLE OCASIONAL(CODIGO INT NOT NULL AUTO_INCREMENT, DES_DE_GAFAS INT NOT NULL, PRIMARY KEY(CODIGO),FOREIGN KEY(CODIGO)REFERENCES CLIENTES(CODIGO))ENGINE=INNODB; CREATE TABLE COMPRAR(CODIGO INT NOT NULL AUTO_INCREMENT, COD_PRODUCTO INT NOT NULL AUTO_INCREMENT, PRIMARY KEY(CODIGO,COD_PRODUCTO),FOREIGN KEY(CODIGO)REFERENCES CLIENTES( CODIGO),FOREIGN KEY(COD_PRODUCTO)REFERENCES PRODUCTOS_DE_LOS_OJITOS(COD_PRODUCTO)) ENGINE=INNODB; 66