Page 1

Sistema de Información Empresarial

“Laboratorio N°1”

Daniela Oyarzún F. Ruth Zumelzu VALDIVIA – CHILE JUNIO 2012

1.- Realice las siguientes vistas: a) Que entregue los estudiantes que son de Ing. Comercial (NOMBRES y APELLIDOS del estudiante, NOMBRE de la carrera y NOMBRE del campus).


create or replace view estudiantes_ic as select e.nombres, e.apellidos, c.nombre as nombre_carrera, cs.nombre as nombre_campus from estudiantes e, carreras c, campus cs where c.nombre = 'ING. COMERCIAL' and c.id_carrera = e.id_carrera and cs.id_campus = c.id_campus

b) Que entregue los estudiantes que son de Auditoria (NOMBRES y APELLIDOS del estudiante, NOMBRE de la carrera y NOMBRE del campus). create or replace view estudiantes_cont as select e.nombres, e.apellidos, c.nombre as nombre_carrera, cs.nombre as nombre_campus from estudiantes e, carreras c, campus cs where c.nombre = 'AUDITORIA' and c.id_carrera = e.id_carrera and cs.id_campus = c.id_campus


c) Que entregue los estudiantes que se atrasaron en la entrega de los libros(RUT, NOMBRES, APELLIDOS y FONO). create or replace view atraso_entrega_libros as select E.RUT_EST, E.NOMBRES, E. APELLIDOS, E.FONO, P.FECHA_E from ESTUDIANTES E, PRESTAMO P WHERE P.FECHA_E < '23-04-2012' AND E.RUT_EST = P.RUT_EST


d) La cantidad de libros prestados. create or replace view n_libros_p as select COUNT(P.COD_LIBRO) AS NUMERO_LIBROS from PRESTAMO P, LIBROS L WHERE L.COD_LIBRO = P.COD_LIBRO


e) Los libros de editoriales extranjeras (CODIGO, TITULO, Aテ前 y PAIS de ORIGEN). create or replace view libros_edext as select l.cod_libro, l.titulo, l.agno as aテアo, ed.pais from libros l, editoriales ed where ed.pais <> 'CHILE' and ed.id_edit = l.id_edit

f) Los libros que son de reserva (CODIGO, TITULO y Aテ前 del LIBRO, NOMBRE de la biblioteca, el NOMBRE y APELLIDO del autor, el NOMBRE de la editorial y el PAIS). create or replace view libros_reserva as select l.cod_libro, l.titulo, l.agno as aテアo_libro, b.biblioteca, a.nombres as nombre_autor, a.apellidos as apellido_autor, ed.nombre as nombre_editorial, ed.pais from libros l, biblioteca b, editoriales ed, tipo t, autores a where t.tipo_p = 'RESERVA' and a.rut_autor = l.rut_autor and b.id_biblio = l.id_biblio and ed.id_edit = l.id_edit and t.id_tipo = l.id_tipo


2.-Se requiere obtener datos desde la Base de Datos y almacenarlos de forma permanente (Vista). Se solicita: a.- Los estudiantes del campus Isla Teja, que tienen libros en su poder (atrasados o no). create or replace view estteja_libros as select e.rut_est, e.nombres as nom_estudiante, e.apellidos as apell_estudiante, cs.nombre as nom_campus, p.fecha_p from estudiantes e, campus cs, prestamo p, carreras c where cs.nombre = 'ISLA TEJA' and e.rut_est = p.rut_est and cs.id_campus = c.id_campus and c.id_carrera = e.id_carrera

b.- Se debe entregar el RUT, NOMBRE y APELLIDOS del estudiante, ademรกs del NOMBRE de la carrera a la cual pertenece. create or replace view datos_estudiantes as select e.rut_est, e.nombres as nom_estudiante, e.apellidos as ap_estudiante, c.nombre as nom_carrera from estudiantes e, carreras c where c.id_carrera = e.id_carrera


c.- Además se debe entregar que 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. create or replace view estudiante_prestlibro as select e.rut_est, e.nombres as nom_estudiante, e.apellidos as ap_estudiante, c.nombre as nom_carrera, l.cod_libro, l.titulo, l.agno as año, a.nombres as nom_autor, a.apellidos as ap_autor, ed.nombre as nom_editorial, ed.pais, b.biblioteca, t.tipo_p from estudiantes e, carreras c, libros l, autores a, biblioteca b, tipo t, prestamo p, editoriales ed where c.id_carrera = e.id_carrera and e.rut_est = p.rut_est and l.cod_libro = p.cod_libro and a.rut_autor = l.rut_autor and b.id_biblio = l.id_biblio and t.id_tipo = l.id_tipo and ed.id_edit = l.id_edit


d.- Se debe indicar que funcionario realizo la transacci贸n, con RUT, NOMBRE y APELLIDO create or replace view funcionario_prestamo as select e.rut_est, e.nombres as nom_estudiante, e.apellidos as ap_estudiante, c.nombre as nom_carrera, l.cod_libro, l.titulo, l.agno as a帽o, a.nombres as nom_autor, a.apellidos as ap_autor, ed.nombre as nom_editorial, ed.pais, b.biblioteca, t.tipo_p, f.rut_func, f.nombres as nom_funcionario, f.apellidos as ap_funcionario from estudiantes e, carreras c, libros l, autores a, biblioteca b, tipo t, prestamo p, editoriales ed, funcionarios f where c.id_carrera = e.id_carrera and e.rut_est = p.rut_est and l.cod_libro = p.cod_libro and a.rut_autor = l.rut_autor and b.id_biblio = l.id_biblio and t.id_tipo = l.id_tipo and ed.id_edit = l.id_edit and f.rut_func = p.rut_func


e.- Además deberá indicarse la FECHA de PRESTAMO y la FECHA de ENTREGA de éste. create or replace view fecha_prestamos as select e.rut_est, e.nombres as nom_estudiante, e.apellidos as ap_estudiante, c.nombre as nom_carrera, l.cod_libro, l.titulo, l.agno as año, a.nombres as nom_autor, a.apellidos as ap_autor, ed.nombre as nom_editorial, ed.pais, b.biblioteca, t.tipo_p, f.rut_func, f.nombres as nom_funcionario, f.apellidos as ap_funcionario, p.fecha_p as fecha_prestamo, p.fecha_e as fecha_entrega from estudiantes e, carreras c, libros l, autores a, biblioteca b, tipo t, prestamo p, editoriales ed, funcionarios f where c.id_carrera = e.id_carrera and e.rut_est = p.rut_est and l.cod_libro = p.cod_libro and a.rut_autor = l.rut_autor and b.id_biblio = l.id_biblio and t.id_tipo = l.id_tipo and ed.id_edit = l.id_edit and f.rut_func = p.rut_func


3.- Se solicita obtener lo siguiente (consultas): a) El nĂşmero de Estudiantes por Carrera. create or replace view estudiantes_carreras as select count(e.rut_est) as numero_estudiantes, c.nombre as nombre_carrera from estudiantes e, carreras c where c.id_carrera = e.id_carrera group by c.nombre

b) El nĂşmero de Estudiantes por Campus create or replace view estudiantes_campus as select count(e.rut_est) as numero_estudiantes, cs.nombre as nombre_campus from estudiantes e, campus cs, carreras c where c.id_carrera = e.id_carrera


c) El nĂşmero de Estudiantes por Ciudad create or replace view estudiantes_ciudad as select count(e.rut_est) as numero_estudiantes, ci.nombre as nombre_ciudad from estudiantes e, campus cs, carreras c, ciudad ci where c.id_carrera = e.id_carrera and cs.id_campus = c.id_campus and ci.id_ciudad = cs.id_ciudad group by ci.nombre

d) El nĂşmero de PrĂŠstamos atrasados create or replace view prestamos_atrasados as select count(p.fecha_e) as numero_prestamos_atrasados from prestamo p where p.fecha_e < '23-04-2012'


e) El nĂşmero de Prestamos Activos, No atrasados. create or replace view prestamos_activos as select count(p.fecha_e) as numero_prestamos_activos from prestamo p where p.fecha_e > '23-04-2012'

Ayudantia 1  

Ayudantia 1