SlideShare une entreprise Scribd logo
1  sur  17
UNIVERSIDAD AUSTRAL DE CHILE
                   FACULTAD DE CIENCIAS ECONÓMICAS
                   Y ADMINISTRATIVAS




Sistemas de Información Empresarial
             (ADMI273)




                 Laboratorio 3
        Consultas PL/SQL-Oracle
  Alumnos: Alfredo Torres
            Alejandro Vesperinas
 Profesor: Cristian Salazar C.
Ayudante: José Luis Carrasco V.




                                          15 de Junio de 2012
Actividades:
1.- Se solicita obtener mediante una función el resultado de la multiplicación de 8 por 9.
2.- Se solicita obtener mediante una función el resultado de la división de 4 por 55.
3.- Investigar el uso de parámetros en una función, y desarrolle una función para cada uno
de los siguientes ejercicios:

       a) F(X,Y) = X+Y
b) F(X,Y,Z) = (X+Y)*Z
c) F(W,X,Y,Z) = W(X-1)(Y-Z)(Z+2)
4.- Investigue el uso de la sentencia “INTO”.

        La cláusula del Oracle PL/SQL “INTO” se usa en bloques PL/SQL para obtener los
resultados de la consulta SELECT en una variable local. Las columnas seleccionadas en la
consulta deben ser devueltas en las variables locales, que deben ser compatibles con las
columnas de tipo de datos. También se utiliza en el archivo ejecutable (BEGIN...END)
sección de un bloque PL/SQL.

       En el uso por defecto la cláusula [SELECT...INTO], la sentencia recupera una o
más columnas de una sola fila. En el uso a granel [SELECT...BULK COLLECT INTO], la
sentencia recupera un conjunto de resultados completo en una sola operación.

     Por defecto, la declaración [SELECT...INTO] sólo puede devolver una sola fila. Si
se devuelve más de una fila, PL/SQL produce la excepción predefinida
TOO_MANY_ROWS (SQL Error-02112).

       Ejemplo de uso:

    DECLARE

      L_EMPNO NUMBER;

    L_ENAME VARCHAR2(1000);

      L_DEPTNO NUMBER;

      L_SALARY NUMBER;

    BEGIN

    SELECT EMPNO, ENAME, DEPTNO, SALARY

    INTO     L_EMPNO, L_ENAME, L_DEPTNO, L_SALARY

    FROM EMPLOYEES

    WHERE EMPNO=100;

    END;
5.-Se define que la morosidad excesiva es referida a cuando un estudiante no ha hecho
entrega de un préstamo por un tiempo igual o superior a 20 días. Realice una función que
entregue el N° de prestamos con Morosidad Excesiva.
6.- Desarrolle lo mismo que en el ejercicio 5, solo que esta vez el valor de 20 días pueda ser
variable, esto es pasándolo como parámetro a la función.
7.- Se solicita pasar por parámetro a la función el número de días a evaluar y el valor por
día de atraso. Se debe entregar el valor total de las deudas adquiridas por todo el alumnado.
8.- Investigue cual es la diferencia entre FUNCTION y PROCEDURE en PLSQL.

       La única diferencia entre procedimientos y funciones en PL/SQL es que las
funciones siempre devuelven un valor único, mientras que los procedimientos no devuelven
un valor a la persona que llama.

Ejemplo:

CREATE OR REPLACE PROCEDURE my_proc
 (p_name IN VARCHAR2 := 'John') as begin ... end

CREATE OR REPLACE FUNCTION my_func
 (p_name IN VARCHAR2 := 'John') return varchar2 as begin ... end

Observe cómo la función tiene una cláusula de retorno entre la lista de parámetros y la
palabra clave "como". Esto significa que se espera que tenga la última instrucción dentro
del cuerpo de la función de leer algo como:

return(my_varchar2_local_variable);

Donde my_varchar2_local_variable es cierto varchar2 que debería ser devuelto por esta
función.
9.- Lea los artículos de INSERT, UPDATE y DELETE que se encuentran en Definiciones
al final de este documento.
10.- Realice un procedimiento (PROCEDURE) que reciba como parámetro el Rut del
Estudiante, el Código del Libro y el Rut del Funcionario. Este procedimiento debe ingresar
un préstamo, considerando que todos los libros se prestan por 3 días. (Usar INSERT y
SYSDATE)
11.- Realice un procedimiento que entregue un libro, esto es ingresando el Rut del
Estudiante y el Libro respectivamente (Usar DELETE).
12.- Realizar un procedimiento que realice lo mismo que el ejercicio 7, pero que se le
entreguen 2 parámetros (días a evaluar y valor por día de atraso en pesos chilenos) y
muestre 3 parámetros de salida (deuda total del alumnado en pesos chilenos, en euros y en
dólares).
Lab 04 06

Contenu connexe

En vedette

Un total de 75 equipos en el Triatló Antella 2012
Un total de 75 equipos en el Triatló Antella 2012Un total de 75 equipos en el Triatló Antella 2012
Un total de 75 equipos en el Triatló Antella 2012
Cec Antella
 
Las actividades en_un_espacio_virtual_1-1
Las actividades en_un_espacio_virtual_1-1Las actividades en_un_espacio_virtual_1-1
Las actividades en_un_espacio_virtual_1-1
virtualman
 
presentacion de astrid barios
presentacion de astrid bariospresentacion de astrid barios
presentacion de astrid barios
astridbarrios
 
Lorena, leudyth y joanna
Lorena, leudyth y joannaLorena, leudyth y joanna
Lorena, leudyth y joanna
leudyth
 
Basico access2007
Basico access2007Basico access2007
Basico access2007
julissaher
 
Presentacion general sgr_mayo
Presentacion general sgr_mayoPresentacion general sgr_mayo
Presentacion general sgr_mayo
pablofonsecad
 

En vedette (20)

Un total de 75 equipos en el Triatló Antella 2012
Un total de 75 equipos en el Triatló Antella 2012Un total de 75 equipos en el Triatló Antella 2012
Un total de 75 equipos en el Triatló Antella 2012
 
Viagecosmicomaloka
ViagecosmicomalokaViagecosmicomaloka
Viagecosmicomaloka
 
Lección 1 2012(interpretacion de la norma juridica)
Lección 1 2012(interpretacion de la norma juridica)Lección 1 2012(interpretacion de la norma juridica)
Lección 1 2012(interpretacion de la norma juridica)
 
Canto de Pássaros
Canto de Pássaros Canto de Pássaros
Canto de Pássaros
 
Informatica
InformaticaInformatica
Informatica
 
Las actividades en_un_espacio_virtual_1-1
Las actividades en_un_espacio_virtual_1-1Las actividades en_un_espacio_virtual_1-1
Las actividades en_un_espacio_virtual_1-1
 
CONEXIONES DE RED
CONEXIONES DE REDCONEXIONES DE RED
CONEXIONES DE RED
 
Garganta de takachiho
Garganta de takachihoGarganta de takachiho
Garganta de takachiho
 
Computadora
ComputadoraComputadora
Computadora
 
Aplicaciones Android Nivel I
Aplicaciones Android Nivel IAplicaciones Android Nivel I
Aplicaciones Android Nivel I
 
Anddre
AnddreAnddre
Anddre
 
Practica 5
Practica 5Practica 5
Practica 5
 
Relato no lienal
Relato no lienalRelato no lienal
Relato no lienal
 
Energia
EnergiaEnergia
Energia
 
presentacion de astrid barios
presentacion de astrid bariospresentacion de astrid barios
presentacion de astrid barios
 
Lorena, leudyth y joanna
Lorena, leudyth y joannaLorena, leudyth y joanna
Lorena, leudyth y joanna
 
Loco de amor
Loco de amorLoco de amor
Loco de amor
 
Basico access2007
Basico access2007Basico access2007
Basico access2007
 
Presentacion general sgr_mayo
Presentacion general sgr_mayoPresentacion general sgr_mayo
Presentacion general sgr_mayo
 
Sports bask
Sports baskSports bask
Sports bask
 

Similaire à Lab 04 06

Laboratorio n2 de ayudantía sie
Laboratorio n2 de ayudantía  sieLaboratorio n2 de ayudantía  sie
Laboratorio n2 de ayudantía sie
katendency
 
Taller funciones de usuario
Taller funciones de usuarioTaller funciones de usuario
Taller funciones de usuario
jarol
 
Utp sirn_2015-2 lab3
 Utp sirn_2015-2 lab3 Utp sirn_2015-2 lab3
Utp sirn_2015-2 lab3
jcbenitezp
 

Similaire à Lab 04 06 (20)

Tarea 3
Tarea 3Tarea 3
Tarea 3
 
Trabajo 2. ayudantía. elmar alarcón namuncura
Trabajo 2. ayudantía. elmar alarcón namuncuraTrabajo 2. ayudantía. elmar alarcón namuncura
Trabajo 2. ayudantía. elmar alarcón namuncura
 
Laboratorio n2 de ayudantía sie
Laboratorio n2 de ayudantía  sieLaboratorio n2 de ayudantía  sie
Laboratorio n2 de ayudantía sie
 
Sesion10 - Funciones y procedimientos (Oracle)
Sesion10 - Funciones y procedimientos (Oracle)Sesion10 - Funciones y procedimientos (Oracle)
Sesion10 - Funciones y procedimientos (Oracle)
 
11 Guía_Fundamentos de Base de Datos.docx
11 Guía_Fundamentos de Base de Datos.docx11 Guía_Fundamentos de Base de Datos.docx
11 Guía_Fundamentos de Base de Datos.docx
 
SISTEMAS
SISTEMASSISTEMAS
SISTEMAS
 
MAGIC PL_SQL ORACLE_ Ejemplos de Colecciones.pdf
MAGIC PL_SQL ORACLE_ Ejemplos de Colecciones.pdfMAGIC PL_SQL ORACLE_ Ejemplos de Colecciones.pdf
MAGIC PL_SQL ORACLE_ Ejemplos de Colecciones.pdf
 
ITESO
ITESOITESO
ITESO
 
Ayudantia 4 de junio
Ayudantia 4 de junioAyudantia 4 de junio
Ayudantia 4 de junio
 
Herencia clase
Herencia claseHerencia clase
Herencia clase
 
modularidad de programación 2da parte (3) (1).pptx
modularidad de programación 2da parte (3) (1).pptxmodularidad de programación 2da parte (3) (1).pptx
modularidad de programación 2da parte (3) (1).pptx
 
Guia 04 parametros poo
Guia 04 parametros pooGuia 04 parametros poo
Guia 04 parametros poo
 
10 Guía_Fundamentos de Base de Datos.docx
10 Guía_Fundamentos de Base de Datos.docx10 Guía_Fundamentos de Base de Datos.docx
10 Guía_Fundamentos de Base de Datos.docx
 
Reporte 9
Reporte 9Reporte 9
Reporte 9
 
preparedstatement
preparedstatementpreparedstatement
preparedstatement
 
Cap I Plsql
Cap I PlsqlCap I Plsql
Cap I Plsql
 
JAVA ORIENTADO A OBJETOS - HERENCIA
JAVA ORIENTADO A OBJETOS - HERENCIAJAVA ORIENTADO A OBJETOS - HERENCIA
JAVA ORIENTADO A OBJETOS - HERENCIA
 
Sesion05 - Manipulacion de datos (Oracle)
Sesion05 - Manipulacion de datos (Oracle)Sesion05 - Manipulacion de datos (Oracle)
Sesion05 - Manipulacion de datos (Oracle)
 
Taller funciones de usuario
Taller funciones de usuarioTaller funciones de usuario
Taller funciones de usuario
 
Utp sirn_2015-2 lab3
 Utp sirn_2015-2 lab3 Utp sirn_2015-2 lab3
Utp sirn_2015-2 lab3
 

Lab 04 06

  • 1. UNIVERSIDAD AUSTRAL DE CHILE FACULTAD DE CIENCIAS ECONÓMICAS Y ADMINISTRATIVAS Sistemas de Información Empresarial (ADMI273) Laboratorio 3 Consultas PL/SQL-Oracle Alumnos: Alfredo Torres Alejandro Vesperinas Profesor: Cristian Salazar C. Ayudante: José Luis Carrasco V. 15 de Junio de 2012
  • 3. 1.- Se solicita obtener mediante una función el resultado de la multiplicación de 8 por 9.
  • 4. 2.- Se solicita obtener mediante una función el resultado de la división de 4 por 55.
  • 5. 3.- Investigar el uso de parámetros en una función, y desarrolle una función para cada uno de los siguientes ejercicios: a) F(X,Y) = X+Y
  • 6. b) F(X,Y,Z) = (X+Y)*Z
  • 7. c) F(W,X,Y,Z) = W(X-1)(Y-Z)(Z+2)
  • 8. 4.- Investigue el uso de la sentencia “INTO”. La cláusula del Oracle PL/SQL “INTO” se usa en bloques PL/SQL para obtener los resultados de la consulta SELECT en una variable local. Las columnas seleccionadas en la consulta deben ser devueltas en las variables locales, que deben ser compatibles con las columnas de tipo de datos. También se utiliza en el archivo ejecutable (BEGIN...END) sección de un bloque PL/SQL. En el uso por defecto la cláusula [SELECT...INTO], la sentencia recupera una o más columnas de una sola fila. En el uso a granel [SELECT...BULK COLLECT INTO], la sentencia recupera un conjunto de resultados completo en una sola operación. Por defecto, la declaración [SELECT...INTO] sólo puede devolver una sola fila. Si se devuelve más de una fila, PL/SQL produce la excepción predefinida TOO_MANY_ROWS (SQL Error-02112). Ejemplo de uso: DECLARE L_EMPNO NUMBER; L_ENAME VARCHAR2(1000); L_DEPTNO NUMBER; L_SALARY NUMBER; BEGIN SELECT EMPNO, ENAME, DEPTNO, SALARY INTO L_EMPNO, L_ENAME, L_DEPTNO, L_SALARY FROM EMPLOYEES WHERE EMPNO=100; END;
  • 9. 5.-Se define que la morosidad excesiva es referida a cuando un estudiante no ha hecho entrega de un préstamo por un tiempo igual o superior a 20 días. Realice una función que entregue el N° de prestamos con Morosidad Excesiva.
  • 10. 6.- Desarrolle lo mismo que en el ejercicio 5, solo que esta vez el valor de 20 días pueda ser variable, esto es pasándolo como parámetro a la función.
  • 11. 7.- Se solicita pasar por parámetro a la función el número de días a evaluar y el valor por día de atraso. Se debe entregar el valor total de las deudas adquiridas por todo el alumnado.
  • 12. 8.- Investigue cual es la diferencia entre FUNCTION y PROCEDURE en PLSQL. La única diferencia entre procedimientos y funciones en PL/SQL es que las funciones siempre devuelven un valor único, mientras que los procedimientos no devuelven un valor a la persona que llama. Ejemplo: CREATE OR REPLACE PROCEDURE my_proc (p_name IN VARCHAR2 := 'John') as begin ... end CREATE OR REPLACE FUNCTION my_func (p_name IN VARCHAR2 := 'John') return varchar2 as begin ... end Observe cómo la función tiene una cláusula de retorno entre la lista de parámetros y la palabra clave "como". Esto significa que se espera que tenga la última instrucción dentro del cuerpo de la función de leer algo como: return(my_varchar2_local_variable); Donde my_varchar2_local_variable es cierto varchar2 que debería ser devuelto por esta función.
  • 13. 9.- Lea los artículos de INSERT, UPDATE y DELETE que se encuentran en Definiciones al final de este documento.
  • 14. 10.- Realice un procedimiento (PROCEDURE) que reciba como parámetro el Rut del Estudiante, el Código del Libro y el Rut del Funcionario. Este procedimiento debe ingresar un préstamo, considerando que todos los libros se prestan por 3 días. (Usar INSERT y SYSDATE)
  • 15. 11.- Realice un procedimiento que entregue un libro, esto es ingresando el Rut del Estudiante y el Libro respectivamente (Usar DELETE).
  • 16. 12.- Realizar un procedimiento que realice lo mismo que el ejercicio 7, pero que se le entreguen 2 parámetros (días a evaluar y valor por día de atraso en pesos chilenos) y muestre 3 parámetros de salida (deuda total del alumnado en pesos chilenos, en euros y en dólares).