SlideShare una empresa de Scribd logo
1 de 8
UNIVERSIDAD AUSTRAL DE CHILE
FACULTAD DE CIENCIAS ECONÓMICAS Y ADMINISTRATIVAS
           INSTITUTO DE ADMINISTRACIÓN
                      ADMI 273




            Laboratorio 2
   ORACLE – PL/SQL




                                    Alumnos:
                                            Patricio Gómez
                                            Juan Pablo Neira
                                            Nicolas Klocker
Actividades

Supuestos: La base de datos no guarda el histórico de los préstamos realizados, es decir,
que al entregar un libro, ese préstamo se elimina de la tabla PRESTAMO.

   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).

La consulta realizada para obtener dicha información es la siguiente:

select e.nombres, e.apellidos, car.nombre, cam.nombre
from estudiantes e, carreras car, campus cam
where car.nombre='ING. COMERCIAL'
and cam.id_campus=car.id_campus
and car.id_carrera=e.id_carrera;

Parte de la tabla que se genera de esta consulta es la siguiente:




   b) Que entregue los estudiantes que son de Auditoria (NOMBRES y APELLIDOS del
      estudiante, NOMBRE de la carrera y NOMBRE del campus).

La consulta realizada para obtener dicha información es la siguiente:

select e.nombres, e.apellidos, car.nombre, cam.nombre
from estudiantes e, carreras car, campus cam
where car.nombre='AUDITORIA'
and cam.id_campus=car.id_campus
and car.id_carrera=e.id_carrera;

Parte de la tabla que se genera de esta consulta es la siguiente:
c) Que entregue los estudiantes que se atrasaron en la entrega de los libros (RUT,
       NOMBRES, APELLIDOS, FONO).

La consulta realizada para obtener dicha información es la siguiente:

select e.nombres, e.apellidos, e.fono, e.rut_est, p.fecha_p, p.fecha_e
from estudiantes e, prestamo p
where e.rut_est=p.rut_est
and p.fecha_e<sysdate;

Parte de la tabla que se genera de esta consulta es la siguiente:




    d) La cantidad de libros prestados.

La consulta realizada para obtener dicha información es la siguiente:

select count(*)
from prestamo;

La tabla que se genera de esta consulta es la siguiente:




    e) Los libros de editoriales extranjeras (CODIGO, TITULO, AÑO y PAIS de origen).

La consulta realizada para obtener dicha información es la siguiente:

select l.cod_libro, l.titulo, l.agno, ed.pais
from libros l, editoriales ed
where ed.pais<>'CHILE'
and ed.id_edit=l.id_edit;

Parte de la tabla que se genera de esta consulta es la siguiente:




   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).

La consulta realizada para obtener dicha información es la siguiente:

select l.cod_libro, l.titulo, l.agno, b.biblioteca, a.nombres, a.apellidos, ed.nombre, ed.pais,
t.tipo_p
from libros l, biblioteca b, autores a, editoriales ed, tipo t
where t.tipo_p='RESERVA'
and t.id_tipo=l.id_tipo
and b.id_biblio=l.id_biblio
and ed.id_edit=l.id_edit
and a.rut_autor=l.rut_autor;

Parte de la tabla que se genera de esta consulta es la siguiente:
2. 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, NOMBRES 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 APELLIDOS del autor, la EDITORIAL y su PAIS, indicar en
       qué biblioteca se encuentra, y de qué tipo es.
   -   Se debe indicar qué funcionario realizó 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.

La consulta realizada para obtener dicha información es la siguiente:

select e.nombres AS "Nombre Estudiante",
         e.apellidos AS "Apellido Estudiante",
         e.rut_est, c.nombre AS "Carrera",
         l.cod_libro,
         l.titulo,
         l.agno AS "Año",
         a.nombres AS "Nombre Autor",
         a.apellidos AS "Apellido Autor",
         ed.nombre AS "Editorial",
         ed.pais,
         b.biblioteca,
         t.tipo_p,
         f.rut_func,
         f.nombres AS "Nombre Funcionario",
         f.apellidos AS "Apellido Funcionario",
         p.fecha_p,
         p.fecha_e
from estudiantes e, carreras c, campus cam, libros l, autores a, editoriales ed, biblioteca
b, tipo t, funcionarios f, prestamo p
where cam.nombre='ISLA TEJA'
and c.id_carrera=e.id_carrera
and cam.id_campus=c.id_campus
and l.cod_libro=p.cod_libro
and f.rut_func=p.rut_func
and e.rut_est=p.rut_est
and t.id_tipo=l.id_tipo
and a.rut_autor=l.rut_autor
and ed.id_edit=l.id_edit
and b.id_biblio=l.id_biblio
and p.fecha_e<=sysdate;




Parte de la tabla que se genera de esta consulta es la siguiente:




   3. Se solicita obtener lo siguiente (consultas):

   a) El número de estudiantes por carrera.

La consulta realizada para obtener dicha información es la siguiente:

select c.nombre, count (e.rut_est)AS "Nro Estudiantes"
from carreras c, estudiantes e
where c.id_carrera=e.id_carrera
group by c.nombre;
La tabla que se genera de esta consulta es la siguiente:




   b) El número de estudiantes por campus.

La consulta realizada para obtener dicha información es la siguiente:

select cam.nombre, count (e.rut_est) AS "Nro Estudiantes"
from campus cam, estudiantes e, carreras c
where cam.id_campus=c.id_campus
and c.id_carrera=e.id_carrera
group by cam.nombre;

La tabla que se genera de esta consulta es la siguiente:




   c) El número de estudiantes por ciudad.

La consulta realizada para obtener dicha información es la siguiente:

select ci.nombre, count (e.rut_est) AS "Nro Estudiantes"
from campus cam, estudiantes e, carreras c, ciudad ci
where cam.id_campus=c.id_campus
and c.id_carrera=e.id_carrera
and ci.id_ciudad=cam.id_ciudad
group by ci.nombre;
La tabla que se genera de esta consulta es la siguiente:




   d) El número de préstamos atrasados.

La consulta realizada para obtener dicha información es la siguiente:

select count (p.fecha_e) AS "Nro Prestamos Atrasados"
from prestamo p
where p.fecha_e<sysdate;

La tabla que se genera de esta consulta es la siguiente:




   e) El número de préstamos activos, no atrasados.

La consulta realizada para obtener dicha información es la siguiente:

select count (p.fecha_e) AS "Nro prestamos activos"
from prestamo p
where p.fecha_e>=sysdate;

La tabla que se genera de esta consulta es la siguiente:

Más contenido relacionado

La actualidad más candente (14)

Tarea 1
Tarea 1Tarea 1
Tarea 1
 
Laboratorio N° 2
Laboratorio N° 2Laboratorio N° 2
Laboratorio N° 2
 
Laboratorio Nº 2 SIA
Laboratorio Nº 2 SIALaboratorio Nº 2 SIA
Laboratorio Nº 2 SIA
 
Laboratorio 2
Laboratorio 2Laboratorio 2
Laboratorio 2
 
Tarea sia 30-04-12
Tarea sia 30-04-12Tarea sia 30-04-12
Tarea sia 30-04-12
 
Laboratorio 2 (1)
Laboratorio 2 (1)Laboratorio 2 (1)
Laboratorio 2 (1)
 
Tarea ahora
Tarea ahoraTarea ahora
Tarea ahora
 
Trabajo ayudantía
Trabajo ayudantíaTrabajo ayudantía
Trabajo ayudantía
 
Laboratorio n 2 (1)
Laboratorio n 2 (1)Laboratorio n 2 (1)
Laboratorio n 2 (1)
 
Laboratorio N° 2
Laboratorio N° 2Laboratorio N° 2
Laboratorio N° 2
 
Ayudantia 2 sia
Ayudantia 2 siaAyudantia 2 sia
Ayudantia 2 sia
 
Laboratorio 2
Laboratorio 2Laboratorio 2
Laboratorio 2
 
Laboratorio n 2
Laboratorio n 2Laboratorio n 2
Laboratorio n 2
 
Laboratorio número ii
Laboratorio número iiLaboratorio número ii
Laboratorio número ii
 

Similar a Lab 2 (17)

Laboratorio SIA - 2
Laboratorio SIA - 2Laboratorio SIA - 2
Laboratorio SIA - 2
 
Plsql
PlsqlPlsql
Plsql
 
Plsql
PlsqlPlsql
Plsql
 
PLSQL
PLSQLPLSQL
PLSQL
 
Laboratorio 2 - ayudantia
Laboratorio 2 - ayudantiaLaboratorio 2 - ayudantia
Laboratorio 2 - ayudantia
 
Tarea sia 30-04-12
Tarea sia 30-04-12Tarea sia 30-04-12
Tarea sia 30-04-12
 
Laboratorio 2
Laboratorio 2Laboratorio 2
Laboratorio 2
 
Trabajo ayudantia
Trabajo ayudantiaTrabajo ayudantia
Trabajo ayudantia
 
Ayudantia 2 sia
Ayudantia 2 siaAyudantia 2 sia
Ayudantia 2 sia
 
Tarea consultas ayudantia 23 del 4
Tarea consultas ayudantia 23 del 4Tarea consultas ayudantia 23 del 4
Tarea consultas ayudantia 23 del 4
 
Consultas en oracle
Consultas en oracleConsultas en oracle
Consultas en oracle
 
Laboratorio nº2
Laboratorio nº2Laboratorio nº2
Laboratorio nº2
 
Laboratorio nº2
Laboratorio nº2Laboratorio nº2
Laboratorio nº2
 
Trabajo sistemas
Trabajo sistemasTrabajo sistemas
Trabajo sistemas
 
Laboratorio
LaboratorioLaboratorio
Laboratorio
 
Laboratorio 2 SIA
Laboratorio 2 SIALaboratorio 2 SIA
Laboratorio 2 SIA
 
Laboratorio SIA
Laboratorio  SIALaboratorio  SIA
Laboratorio SIA
 

Más de jpneiram

MultiTelas
MultiTelasMultiTelas
MultiTelasjpneiram
 
Laboratorio N°1 de Sistemas de Información
Laboratorio N°1 de Sistemas de InformaciónLaboratorio N°1 de Sistemas de Información
Laboratorio N°1 de Sistemas de Informaciónjpneiram
 
Resumen de texto Esmerald sobre las "Teorías E y O".
Resumen de texto Esmerald sobre las "Teorías E y O".Resumen de texto Esmerald sobre las "Teorías E y O".
Resumen de texto Esmerald sobre las "Teorías E y O".jpneiram
 
Modelo E-R y tablas en Microsoft Visio.
Modelo E-R y tablas en Microsoft Visio.Modelo E-R y tablas en Microsoft Visio.
Modelo E-R y tablas en Microsoft Visio.jpneiram
 
Ejemplos de funciones aplicadas en el Modelo SQL.
Ejemplos de funciones aplicadas en el Modelo SQL.Ejemplos de funciones aplicadas en el Modelo SQL.
Ejemplos de funciones aplicadas en el Modelo SQL.jpneiram
 
Ensayo sobre la gestión del conocimiento
Ensayo sobre la gestión del conocimientoEnsayo sobre la gestión del conocimiento
Ensayo sobre la gestión del conocimientojpneiram
 
Recursos que intervienen en la organización.
Recursos que intervienen en la organización.Recursos que intervienen en la organización.
Recursos que intervienen en la organización.jpneiram
 

Más de jpneiram (8)

MultiTelas
MultiTelasMultiTelas
MultiTelas
 
Lab3
Lab3Lab3
Lab3
 
Laboratorio N°1 de Sistemas de Información
Laboratorio N°1 de Sistemas de InformaciónLaboratorio N°1 de Sistemas de Información
Laboratorio N°1 de Sistemas de Información
 
Resumen de texto Esmerald sobre las "Teorías E y O".
Resumen de texto Esmerald sobre las "Teorías E y O".Resumen de texto Esmerald sobre las "Teorías E y O".
Resumen de texto Esmerald sobre las "Teorías E y O".
 
Modelo E-R y tablas en Microsoft Visio.
Modelo E-R y tablas en Microsoft Visio.Modelo E-R y tablas en Microsoft Visio.
Modelo E-R y tablas en Microsoft Visio.
 
Ejemplos de funciones aplicadas en el Modelo SQL.
Ejemplos de funciones aplicadas en el Modelo SQL.Ejemplos de funciones aplicadas en el Modelo SQL.
Ejemplos de funciones aplicadas en el Modelo SQL.
 
Ensayo sobre la gestión del conocimiento
Ensayo sobre la gestión del conocimientoEnsayo sobre la gestión del conocimiento
Ensayo sobre la gestión del conocimiento
 
Recursos que intervienen en la organización.
Recursos que intervienen en la organización.Recursos que intervienen en la organización.
Recursos que intervienen en la organización.
 

Lab 2

  • 1. UNIVERSIDAD AUSTRAL DE CHILE FACULTAD DE CIENCIAS ECONÓMICAS Y ADMINISTRATIVAS INSTITUTO DE ADMINISTRACIÓN ADMI 273 Laboratorio 2 ORACLE – PL/SQL Alumnos: Patricio Gómez Juan Pablo Neira Nicolas Klocker
  • 2. Actividades Supuestos: La base de datos no guarda el histórico de los préstamos realizados, es decir, que al entregar un libro, ese préstamo se elimina de la tabla PRESTAMO. 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). La consulta realizada para obtener dicha información es la siguiente: select e.nombres, e.apellidos, car.nombre, cam.nombre from estudiantes e, carreras car, campus cam where car.nombre='ING. COMERCIAL' and cam.id_campus=car.id_campus and car.id_carrera=e.id_carrera; Parte de la tabla que se genera de esta consulta es la siguiente: b) Que entregue los estudiantes que son de Auditoria (NOMBRES y APELLIDOS del estudiante, NOMBRE de la carrera y NOMBRE del campus). La consulta realizada para obtener dicha información es la siguiente: select e.nombres, e.apellidos, car.nombre, cam.nombre from estudiantes e, carreras car, campus cam where car.nombre='AUDITORIA' and cam.id_campus=car.id_campus and car.id_carrera=e.id_carrera; Parte de la tabla que se genera de esta consulta es la siguiente:
  • 3. c) Que entregue los estudiantes que se atrasaron en la entrega de los libros (RUT, NOMBRES, APELLIDOS, FONO). La consulta realizada para obtener dicha información es la siguiente: select e.nombres, e.apellidos, e.fono, e.rut_est, p.fecha_p, p.fecha_e from estudiantes e, prestamo p where e.rut_est=p.rut_est and p.fecha_e<sysdate; Parte de la tabla que se genera de esta consulta es la siguiente: d) La cantidad de libros prestados. La consulta realizada para obtener dicha información es la siguiente: select count(*) from prestamo; La tabla que se genera de esta consulta es la siguiente: e) Los libros de editoriales extranjeras (CODIGO, TITULO, AÑO y PAIS de origen). La consulta realizada para obtener dicha información es la siguiente: select l.cod_libro, l.titulo, l.agno, ed.pais from libros l, editoriales ed
  • 4. where ed.pais<>'CHILE' and ed.id_edit=l.id_edit; Parte de la tabla que se genera de esta consulta es la siguiente: 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). La consulta realizada para obtener dicha información es la siguiente: select l.cod_libro, l.titulo, l.agno, b.biblioteca, a.nombres, a.apellidos, ed.nombre, ed.pais, t.tipo_p from libros l, biblioteca b, autores a, editoriales ed, tipo t where t.tipo_p='RESERVA' and t.id_tipo=l.id_tipo and b.id_biblio=l.id_biblio and ed.id_edit=l.id_edit and a.rut_autor=l.rut_autor; Parte de la tabla que se genera de esta consulta es la siguiente:
  • 5. 2. 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, NOMBRES 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 APELLIDOS del autor, la EDITORIAL y su PAIS, indicar en qué biblioteca se encuentra, y de qué tipo es. - Se debe indicar qué funcionario realizó 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. La consulta realizada para obtener dicha información es la siguiente: select e.nombres AS "Nombre Estudiante", e.apellidos AS "Apellido Estudiante", e.rut_est, c.nombre AS "Carrera", l.cod_libro, l.titulo, l.agno AS "Año", a.nombres AS "Nombre Autor", a.apellidos AS "Apellido Autor", ed.nombre AS "Editorial", ed.pais, b.biblioteca, t.tipo_p, f.rut_func, f.nombres AS "Nombre Funcionario", f.apellidos AS "Apellido Funcionario", p.fecha_p, p.fecha_e from estudiantes e, carreras c, campus cam, libros l, autores a, editoriales ed, biblioteca b, tipo t, funcionarios f, prestamo p where cam.nombre='ISLA TEJA' and c.id_carrera=e.id_carrera and cam.id_campus=c.id_campus and l.cod_libro=p.cod_libro and f.rut_func=p.rut_func and e.rut_est=p.rut_est and t.id_tipo=l.id_tipo and a.rut_autor=l.rut_autor and ed.id_edit=l.id_edit
  • 6. and b.id_biblio=l.id_biblio and p.fecha_e<=sysdate; Parte de la tabla que se genera de esta consulta es la siguiente: 3. Se solicita obtener lo siguiente (consultas): a) El número de estudiantes por carrera. La consulta realizada para obtener dicha información es la siguiente: select c.nombre, count (e.rut_est)AS "Nro Estudiantes" from carreras c, estudiantes e where c.id_carrera=e.id_carrera group by c.nombre;
  • 7. La tabla que se genera de esta consulta es la siguiente: b) El número de estudiantes por campus. La consulta realizada para obtener dicha información es la siguiente: select cam.nombre, count (e.rut_est) AS "Nro Estudiantes" from campus cam, estudiantes e, carreras c where cam.id_campus=c.id_campus and c.id_carrera=e.id_carrera group by cam.nombre; La tabla que se genera de esta consulta es la siguiente: c) El número de estudiantes por ciudad. La consulta realizada para obtener dicha información es la siguiente: select ci.nombre, count (e.rut_est) AS "Nro Estudiantes" from campus cam, estudiantes e, carreras c, ciudad ci where cam.id_campus=c.id_campus and c.id_carrera=e.id_carrera and ci.id_ciudad=cam.id_ciudad group by ci.nombre;
  • 8. La tabla que se genera de esta consulta es la siguiente: d) El número de préstamos atrasados. La consulta realizada para obtener dicha información es la siguiente: select count (p.fecha_e) AS "Nro Prestamos Atrasados" from prestamo p where p.fecha_e<sysdate; La tabla que se genera de esta consulta es la siguiente: e) El número de préstamos activos, no atrasados. La consulta realizada para obtener dicha información es la siguiente: select count (p.fecha_e) AS "Nro prestamos activos" from prestamo p where p.fecha_e>=sysdate; La tabla que se genera de esta consulta es la siguiente: