Upload
ewing-ma
View
1.086
Download
0
Tags:
Embed Size (px)
DESCRIPTION
RESULUCION PARTE DEL CASO DE ESTUDIO
Citation preview
CASO DE ESTUDIO
Por Edwin Fabián Maza S.
UNIVERSIDAD TÉCNICA PARTICULAR DE LOJA
Domain IdCliente cadena de caracteres de longitud 5Domain IdStaff cadena de caracteres de longitud 5Domain IdCoche cadena de caracteres de longitud 5Domain IdPeriodo cadena de caracteres de longitud 5Domain ExTeorico valor numérico de 2 decimalesDomain ExPráctico valor numérico de 2 decimalesDomain Resultado un único carácter, que debe ser A, R, IDomain Asistencias valor numérico de 2Domain NroRepeticiones valor numérico de 1
Notas(
IdCliente IdentificadorCliente NOT NULL,IdStaff IdentificadorStaff NOT NULL,IdCoche IdentificadorCoche NOT NULL,IdPeriodo IdentificadorCoche NOT NULL,ExTeorico ExamenTeorico NULL, ExPráctico ExamenTeorico NULL,Resultado Resultado NOT NULL DEFAULT “I”,Asistencias Asistencias NOT NULL DEFAULT 0,NroRepeticiones NumeroRepeticiones NOT NULL DEFAULT 0, PRIMARY KEY (IdCliente, IdStaff, IdCoche, IdPeriodo), FOREING KEY (IdStaff) REFERENCES Staff(IdStaff),FOREING KEY (IdCoche) REFERENCES Coche(IdCoche),FOREING KEY (IdPeriodo) REFERENCES Periodo(IdPeriodo)
);
CONSTRAINT notAs_repeticiones_ckCHECK (repeticiones <= 3);
CONSTRAINT lecciones_kRecorrido_ckCHECK (kRecorrido > 0);
CONSTRAINT lecciones_duracion_ckCHECK (duracion <= 1);
a) Obtener la lista de el número de lecciones receptada por un empleado en el periodo que se denote.
b) Actualizar/borrar observaciones referentes a los coches. c) Insertar nuevo automóvil adquirido recientemente por la
organización.d) Obtener la lista de todos los estudiantes que aprobaron con
una nota mayor igual a X puntos.e) Obtener la lista de los estudiantes que aprobaron el curso en
un año, incluyendo el nombre del instructor que dicto el curso.
f) Actualizar/borrar datos de los empleados.g) Listar los datos de todas las lecciones que se dictaron en
una fecha X, incluyendo información referente al coche, instructor y el cliente.
h) Mostrar el promedio de kilómetros recorridos durante una lección de una hora de duración.
Tabla Índice Tipo
Staff apellido de cluster
nombre de cluster
Cliente apellido de cluster
nombre de cluster
email de cluster
Lecciones idCliente principal
idStaff pincipal
Notas idCliente principal
idPeriodo principal
CREATE TABLE Periodo( idPeriodo VARCHAR2(5) NOT NULL, periodo VARCHAR2(30) NOT NULL, CONSTRAINT Peri_Id _pk PRIMARY KEY
idPeriodo);
CREATE TABLE Staff( idEmpleado VARCHAR2(5) NOT NULL, nombres VARCHAR2(30), apellidos VARCHAR2(30), ciudad VARCHAR2(30) NOT NULL, calle VARCHAR2(30) NOT NULL, noCasa NUMERIC(4), codPostal VARCHAR2(10), telefono VARCHAR2(20), email VARCHAR2(20), idJefe VARCHAR2(5), posicion VARCHAR2(30) NOT NULL,
CONSTRAINT empl_idEmp_pk PRIMARY KEY idEmpleado,CONSTRAINT empl_idJefe_fk FOREIGN KEY idJefe REFERENCES Empleado(idJefe),CONSTRAINT empl_post_ck
CHECK (posicion IN (‘ADMINISTRATIVO’,’INSTRUCTOR’,’INSTRUCTOR SENIOR’,’DIRECTOR’))
);
CREATE TABLE Sucursal( sucursalNo VARCHAR2(5) NOT NULL, ciudad VARCHAR2(30) NOT NULL, calle VARCHAR2(30) NOT NULL, noEdificio NUMERIC(4), codPostal VARCHAR2(10), telefono VARCHAR2(20), fax VARCHAR2(10), email VARCHAR2(20), idEmpleado VARCHAR2(5), PRIMARY KEY (sucursalNo), FOREIGN KEY (idEmpleado) REFERENCES
Empleado(IdEmpleado) ON UPDATE CASCADE ON DELETE NO ACTION );