viernes, 11 de abril de 2014

ejercicio Entidad Relacion corridas de toros ó plaza de toros script y modelo

bueno es un ejercicio para analizar mucho y hacer una buena relación así dice el enunciado:

UNIVERSO DEL DISCURSO
La asociación "Amigos de la Fiesta" desea recoger en una base de datos toda la información acerca
de las corridas de todos que se celebran en España y de todos los datos relacionados con ellas.
• Se desea tener información acerca de cada corrida, identificada conjuntamente por un número
de orden, la feria en la que se celebra y el año de celebración (por ejemplo: orden = 2, feria =
San Isidro, Año = 1999).
• En una determinada corrida actúan una serie de toreros (mínimo 1 y máximo 3) de los que
desea guardar su DNI, nombre, apodo y fecha en que tomó la alternativa (fecha en la que se
convirtió en matador de toros). Además se desea saber quien fue el torero que le dio la
alternativa (padrino) en su día (un torero puede dar la alternativa a varios toreros o a ninguno).
• En cada corrida un torero obtiene una serie de premios (cuántas orejas, cuántos rabos y si
salió por la puerta grande o no) de los que se desea mantener información.
• Cada torero puede tener un apoderado del que es protegido. A su vez, un apoderado lo puede
ser de varios toreros. De él se desea saber su DNI, nombre, dirección y teléfono.
• Una corrida se celebra en una plaza de toros de la que se desea saber su nombre que se
supone único, localidad, dirección y aforo. En una misma plaza se pueden celebrar varias
corridas de toros.
• En cada corrida son estoqueados al menos 6 toros. Cada toro viene identificado por el código
de la ganadería a la que pertenece, el año en que nació y un número de orden. Además se
desea mantener información acerca de su nombre y color así como el orden en que fue
toreado.
• Cada toro pertenece a una ganadería determinada. De cada ganadería se pretende saber su
código, localidad y antigüedad (fecha de creación).
Proponer
Modelo Grafico, 
Modelo Logico Conceputal, 
Crear las Tablas.


para modelo grafico en la siguiente imagen se muestra:


y para el script lo analice y lo cree de la siguiente manera:




drop table estoqueado;
drop table toros;
drop table ganaderia;
drop table actuan;
drop table padrino;
drop table toreros;
drop table apoderado;
drop table corridas;
drop table plaza;
create table  plaza(
nombre  varchar(35) primary key,
localidad   varchar(35),
direccion    varchar(35),
aforo         varchar(35)
);
create table corridas(
orden     number(10),
feria  varchar(35)  ,
ano    date,
primary key (orden,feria,ano)
);
create table apoderado(
dni  number(15) primary key,
nombre  varchar (35),
direccion   varchar(35),
telefono varchar (35)
);
create table toreros   (
dni  number(15) primary key,
nombre varchar (35) ,
apodo  varchar (35),
dni_apoderado  number(15),
constraint to_dni_fk foreign key(dni_apoderado) references apoderado(dni)
);
create table padrino(
dni_padrino  number(15),
dni_torero   number(15),
fecha_alternativa  date,
constraint pa_dni_padrino_fk foreign key(dni_padrino) references toreros(dni),
constraint pa_dni_torero_fk foreign key(dni_torero) references toreros(dni)
);
create table actuan(
orden     number(10),
feria  varchar(35) ,
ano    date,
n_orejas number(8),
n_rabos number(8),
puerta_grande number(1),
dni_torero number(15),
constraint ac_fe_fk foreign key(orden,feria,ano) references corridas(orden,feria,ano),
constraint ac_dni_fk foreign key(dni_torero) references toreros(dni)
);
create table ganaderia(
codigo     number(15) primary key,
localidad  varchar(35) ,
antiguedad varchar (35)
);

create table toros(
no     number(15) primary key,
ano          date,
nombre varchar(35),
color varchar(35),
orden   number(15),
codigo_g number(15),
constraint to_co_fk foreign key(codigo_g) references ganaderia(codigo)
);

create table estoqueado(
orden_c     number(10),
feria  varchar(35)  ,
ano    date,
no_toro number(15),
orden  number(15),
constraint es_or_fe__an_fk foreign key(orden_c,feria,ano) references corridas(orden,feria,ano),
constraint es_no_fk foreign key(no_toro) references toros(no)
);


1 comentarios:

nacho vilaescusa dijo...

Hola Muy buenas, la verdad que me ha servido de bastante esta pagina, el caso es que tengo un universo de discurso que se me ha atascado y no se ni por donde cogerlo para sacar el modelo entidad relacion y los create table, se lo adjunto a ver si me puede ayudar, Gracias anticipadas!!!

Le adjunto mi correo para la posible respuesta: nachovillaescusa@hotmail.com
UNIVERSO DE DISCURSO:

El departamento de informática quiere crear una aplicación para gestionar el préstamo de los libros y revistas que posee al conjunto de estudiantes y profesores que lo conforman.
Los libros se prestan durante 30 días a los profesores y durante 15 a los alumnos. Las revistas se prestan durante 10 días a los profesores y durante
7 días a los alumnos. Estos valores podrían cambiarse en un futuro.
De un libro puede haber uno o más ejemplares. De las revistas hay un ejemplar. De los ejemplares se registra el número, fecha de baja (si
ocurre) y observaciones. La numeración de los ejemplares de un documento siempre empieza en el número 1.
De los libros se tiene registrado el código, el título, el autor, la editorial y el año de edición.
De las revista se tiene registrado el código, el título, la editorial, el número y fecha de edición.
De todos los usuarios hay que almacenar su nombre,
apellidos, sexo, tlfs, y email. De los profesores además su especialidad. De los alumnos además los estudios que cursan y el curso (1, 2).Los usuarios toman en préstamo los ejemplares registrándose la fecha de préstamo, la fecha
devolución límite, y cuando se devuelva se registrará la fecha de devolución real. Los usuarios pueden anotar comentarios sobre los documentos que
toman en préstamo. Un usuario solo puede tener prestados 4 ejemplares.
Un usuario puede reservar ejemplares que estén tomados en préstamo por otros usuarios para su lectura cuando sean devueltos. De cada reserva se anota la fecha de registro y la fecha de vencimiento que será de 5 días después de la fecha límite de devolución del ejemplar prestado sobre
el que se hace la reserva. Un usuario solo puede tener reservados cuatro ejemplares. Las reservas que acaben en préstamo deben anotar el préstamo en
que el usuario toma el ejemplar.
Los usuarios que devuelven un ejemplar pasado el límite de devolución son sancionados con 3 días de penalización por cada día de retraso, que se inician en la fecha en que hace la devolución.

Publicar un comentario