Upload
marion
View
144
Download
6
Embed Size (px)
Citation preview
UNIVERSIDAD AUSTRAL DE CHILE
FACULTAD DE CIENCIAS ECONÓMICAS Y ADMINISTRATIVAS
ESCUELA DE AUDITORÍA
Sistemas de Información Administrativos
Ayudantía - Laboratorio N° 2
Profesor Asignatura
Cristian Salazar
Nombre Ayudante
José Carrasco
Alumnas
Belén Arancibia
Marion Fuentes
Valdivia, Noviembre 2012
I) 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).
CÓDIGO SQL:
CREATE OR REPLACE VIEW ESTUDIANTES_COMERCIAL AS
SELECT E.NOMBRES, E.APELLIDOS, C.NOMBRE AS CARRERAS, CA.NOMBRE AS CAMPUS
FROM ESTUDIANTES E, CARRERAS C, CAMPUS CA
WHERE CA.ID_CAMPUS = C.ID_CAMPUS AND C.ID_CARRERA = E.ID_CARRERA
AND C.NOMBRE = 'ING. COMERCIAL'
b) Que entregue los estudiantes que son de Auditoria (NOMBRES y APELLIDOS del estudiante, NOMBRE de la carrera y
NOMBRE del campus).
CÓDIGO SQL
CREATE OR REPLACE VIEW ESTUDIANTES_AUDITORIA AS
SELECT E.NOMBRES, E.APELLIDOS, C.NOMBRE AS CARRERA, CA.NOMBRE AS CAMPUS
FROM ESTUDIANTES E, CARRERAS C, CAMPUS CA
WHERE CA.ID_CAMPUS = C.ID_CAMPUS
AND C.ID_CARRERA = E.ID_CARRERA
AND C.NOMBRE = 'AUDITORIA'
c) Que entregue los estudiantes que se atrasaron en la entrega de los libros (RUT, NOMBRES, APELLIDOS y FONO).
CODIGO SQL:
CREATE OR REPLACE VIEW ESTUDIANTES_ATRASADOS AS
SELECT E. NOMBRES, E. APELLIDOS, E. RUT_EST AS RUT, E. FONO
FROM ESTUDIANTES E, PRESTAMO P
WHERE E.RUT_EST = P.RUT_EST
AND FECHA_E < SYSDATE
d) La cantidad de libros prestados
CODIGO SQL:
CREATE OR REPLACE VIEW PRESTAMOS AS
SELECT COUNT (*) AS PRESTAMOS
FROM PRESTAMO
e) Los libros de editoriales extranjeras (CODIGO, TITULO, AÑO y PAIS de ORIGEN).
CODIGO SQL:
CREATE OR REPLACE VIEW EDITORIALES_EXTRANJERAS AS
SELECT L.COD_LIBRO AS CODIGO, L.TITULO, L.AGNO AS AÑO, E.PAIS
FROM LIBROS L, EDITORIALES E
WHERE E.ID_EDIT=L.ID_EDIT
AND E.PAIS<>'CHILE'
f) Los libros que son de reserva (CODIGO, TITULO y AÑO del LIBRO, NOMBRE de la biblioteca, el NOMBRE y APELLIDO del
autor, el NOMBRE de la editorial y el PAIS ).
CODIGO SQL:
CREATE OR REPLACE VIEW LIBROS_RESERVA AS
SELECT L.COD_LIBRO AS CODIGO, L.TITULO, L. AGNO AS AÑO, B.BIBLIOTECA, A.NOMBRES AS
NOMBRE_AUTOR, A.APELLIDOS AS APELLIDO_AUTOR, E.NOMBRE AS EDITORIAL, E.PAIS
FROM LIBROS L, TIPO T, BIBLIOTECA B, AUTORES A, EDITORIALES E
WHERE A.RUT_AUTOR = L.RUT_AUTOR AND E.ID_EDIT=L.ID_EDIT AND B.ID_BIBLIO=L.ID_BIBLIO AND
T.ID_TIPO=L.ID_TIPO
AND T.TIPO_P= 'RESERVA'
II) Se requiere obtener datos desde la Base de Datos y almacenarlos de forma permanente (Vista). Se solicita:
- Los estudiantes del campus Isla Teja, que tienen libros en su poder (atrasados o no).
- 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 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.
- 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.
CODIGO SQL:
CREATE OR REPLACE VIEW EJERCICIO2 AS
SELECT E.NOMBRES AS NOMBRE_EST, E.APELLIDOS AS APELLIDOS_EST,E.RUT_EST AS RUT_EST,
CA.NOMBRE AS NOMBRE_CARRERA,L.TITULO, L.AGNO AS AÑO, L.COD_LIBRO AS CODIGO,A.NOMBRES
AS NOMBRE_AUTOR, A.APELLIDOS AS APELLIDOS_AUTOR, ED.NOMBRE AS NOMBRE_EDIT, ED.PAIS,
B.BIBLIOTECA, T.TIPO_P AS TIPO, F.NOMBRES AS NOMBRE_FUNC, F.APELLIDOS AS APELLIDO_FUNC,
F.RUT_FUNC AS RUT_FUNC, P.FECHA_P, P.FECHA_E
FROM ESTUDIANTES E, CAMPUS CS, LIBROS L, CARRERAS CA, AUTORES A, BIBLIOTECA B, TIPO T,
FUNCIONARIOS F, PRESTAMO P, EDITORIALES ED
WHERE E.RUT_EST=P.RUT_EST AND L.COD_LIBRO=P.COD_LIBRO AND F.RUT_FUNC=P.RUT_FUNC AND
CA.ID_CARRERA=E.ID_CARRERA AND CS.ID_CAMPUS=CA.ID_CAMPUS AND
CS.ID_CAMPUS=F.ID_CAMPUS AND A.RUT_AUTOR=L.RUT_AUTOR AND ED.ID_EDIT=L.ID_EDIT AND
B.ID_BIBLIO=L.ID_BIBLIO AND T.ID_TIPO=L.ID_TIPO
AND CS.NOMBRE='ISLA TEJA'
AND P.FECHA_P<=SYSDATE
(Continuación columnas)
III) Se solicita obtener lo siguiente (vistas):
a) El número de Estudiantes por Carrera
CODIGO SQL:
CREATE OR REPLACE VIEW EST_CARRERA AS
SELECT COUNT (E.RUT_EST) AS NUMERO_ESTUDIANTES, C.NOMBRE AS 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
CODIGO SQL:
CREATE OR REPLACE VIEW EST_CAMPUS AS
SELECT COUNT (E.RUT_EST) AS NUMERO_ESTUDIANTES, CA.NOMBRE AS CAMPUS
FROM ESTUDIANTES E, CARRERAS C, CAMPUS CA
WHERE C.ID_CARRERA=E.ID_CARRERA
AND CA.ID_CAMPUS=C.ID_CAMPUS
GROUP BY CA.NOMBRE
c) El número de Estudiantes por Ciudad
CODIGO SQL:
CREATE OR REPLACE VIEW EST_CIUDAD AS
SELECT COUNT (E.RUT_EST) AS NUMERO_ESTUDIANTES, CI.NOMBRE
FROM ESTUDIANTES E, CARRERAS C, CAMPUS CA, CIUDAD CI
WHERE C.ID_CARRERA=E.ID_CARRERA
AND CA.ID_CAMPUS=C.ID_CAMPUS
AND CI.ID_CIUDAD=CA.ID_CIUDAD
GROUP BY CI.NOMBRE
d) El numero de Préstamos atrasados
CODIGO SQL:
CREATE OR REPLACE VIEW PREST_ATRASADOS AS
SELECT COUNT (FECHA_E) AS PRESTAMOS_ATRASADOS
FROM PRESTAMO
WHERE FECHA_E<SYSDATE
e) El número de Prestamos Activos, No atrasados.
CODIGO SQL:
CREATE OR REPLACE VIEW PREST_ACTIVOS AS
SELECT COUNT (FECHA_E)AS PREST_ACTIVOS
FROM PRESTAMO
WHERE FECHA_E>=SYSDATE