admi273 tarea 3- jp morales, r. erribarren
TRANSCRIPT
Universidad Austral de Chile
Facultad de Cs Económicas y Administrativas
Instituto de Administración
Tarea Nº 3: Vistas, Funciones y Procedimientos
Nombres: Rodrigo Erribarren
Juan Pablo Morales
Asignatura: Sistemas de Información Empresarial
Profesor: Sr. Cristian Salazar
Ayudante: Claudio Angulo
Valdivia, 30 de mayo de 2011
I. Vista:
Considerar los siguientes puntos para construir una vista que despliegue la siguiente
información:
Los estudiantes que tienen libros a la fecha de: 02/05/2011
Se debe entregar el RUT, NOMBRE y APELLIDOS del estudiante, además del NOMBRE de la
carrera a la cual pertenece.
Además se debe entregar qué libro tiene prestado, indicando CODIGO, TITULO y AÑO, el
NOMBRE y APELLIDO del autor, la EDITORIAL y su PAIS, indicar en qué biblioteca se encuentra,
y de qué tipo es.
Se debe indicar que funcionario realizo la transacción, con RUT, NOMBRE y APELLIDO.
Además deberá indicarse la FECHA de PRESTAMO y la FECHA de ENTREGA de éste.
NOTA: deberá añadir ALIAS al nombre del estudiante, del funcionario, del autor y de la carrera
para diferenciarlos.
Desarrollo
create or replace view tarea3vista1 as
select e.rut_est as "RUT",
e.nombres as "Nombre Estudiante",
e.apellidos as "Apellido Estudiante",
c.nombre as "Nombre Carrera",
a.nombres as "Nombre Autor",
a.apellidos as "Apellido Autor",
i.nombre as "Nombre Editorial",
i.pais,
l.cod_libro,
l.titulo,
l.agno as "Año",
f.rut_func as "RUN Funcionario",
f.nombres as "Nombre Funcionario",
f.apellidos as "Apellido Funcionario",
p.fecha_p as "Fecha Prestamo",
p.fecha_e as "Fecha Devolucion",
b.biblioteca as "Nombre Biblioteca"
from estudiantes e,
carreras c,
libros l,
autores a,
editoriales i,
biblioteca b,
funcionarios f,
prestamo p
where e.rut_est = p.rut_est
and e.id_carrera = c.id_carrera
and p.cod_libro = l.cod_libro
and l.rut_autor = a.rut_autor
and l.id_biblio = b.id_biblio
and l.id_edit = i.id_edit
and p.rut_func = f.rut_func
and p.fecha_e > '02/05/2011'
II. Funciones:
a. Que entregue el número de estudiante de las carreras de Ing. Comercial y Auditoría.
(Pertenece al laboratorio Nº8)
create or replace function tarea31 (a integer) return integer is
Result integer;
begin
select count(e.rut_est) into Result
from estudiantes e,
carreras c
where e.id_carrera = c.id_carrera
and c.id_carrera < 10;
return(Result);
end tarea31;
b. Que entregue el número de veces que se ha prestado un libro a un estudiante, entre un
rango de fechas. (Parámetros de entrada: RUT_ESTUDIANTE, CODIGO_LIBRO, fecha1, fecha2)
(Pertenece al laboratorio Nº8)
create or replace function funcionb(a integer) return integer is
Result integer ;
begin
select count(p.rut_est) into Result
from libros l,
prestamo p,
estudiantes e
where p.cod_libro = l.cod_libro
and e.rut_est = p.rut_est
and a = p.rut_est;
return(Result);
end funcionb;