Está en la página 1de 15

PL SQL

FUNCIONES
Lic Cristian Mercado Quispe
Base de Datos II

Lic. Cristian Mercado Quispe - UPEA


FUNCIONES
 Una función puede tener varios parámetros de
entrada pero devuelve un solo valor.
 Una función debe tener una cláusula de retorno
en la sección ejecutable de la función.
 El tipo de dato devuelto debe ser declarado en
el encabezado de la función.

Lic. Cristian Mercado Quispe - UPEA


SINTAXIS DE FUNCIONES
CREATE OR REPLACE FUNCTION nombre_función
[param1 IN tipo1, param2 IN tipo2,….]
RETURN tipo_de_dato
IS
var_retornar tipo_dato;
BEGIN
-- ejecución y asignación
RETURN var_retornar;
[EXCEPCTION]
-- Control de excepciones
END;
Lic. Cristian Mercado Quispe - UPEA
FUNCIONES
Ejemplo, Crear una función denominada
f_devuelve_nombre, que reciba como parámetro
de entrada el id del empleado y devuelva el
nombre del empleado.

Lic. Cristian Mercado Quispe - UPEA


FUNCIONES
 Ejemplo
 Crear una función denominada
f_devuelve_cantidad_emp que tenga como
parámetro de entrada el id de un departamento
y devuelva la cantidad de empleados que tiene
dicho departamento.

Lic. Cristian Mercado Quispe - UPEA


CREAR LAS SIGUIENTES TABLAS
ESTUDIANTE
PK ID_ESTUDIANTE
NOMBRES
APELLIDOS CURSA
FECHA_NAC
UK CORREO_ELEC PK ID_CURSA
FK ID_ESTUDIANTE
FK ID_MATERIA
NOTA
GESTION
AÑO
MATERIA
PK ID_MATERIA
NOMBRE

Lic. Cristian Mercado Quispe - UPEA


EJERCICIOS
 Crear un procedimiento almacenado
denominado “adiciona_estudiante()”, Luego
utilizar el procedimiento para registrar los
siguientes estudiantes:
ID_ESTUD. NOMBRE APELLIDOS FECHA_NAC CORREO_E
100 JUAN PEREZ 1/1/1995 JP@GMAIL.COM
101 MARIA GOMEZ 31/1/1990 MG@GMAIL.COM
102 LUIS CALLE 15/12/1988 LC@GMAIL.COM

Lic. Cristian Mercado Quispe - UPEA


EJERCICIOS

Crear un procedimiento almacenado denominado


“adiciona_materia()”, Luego utilizar el
procedimiento para registrar las siguientes
materias:
ID_MATERIA NOMBRE
10 CALCULO1
20 ALGEBRA1
30 INTRODUCCIÓN A LA
PROGRAMACIÓN

Lic. Cristian Mercado Quispe - UPEA


EJERCICIOS
 Crear un procedimiento almacenado
denominado “ASIGNA_MATERIA()” que
permita registrar la asignación de una materia a
un estudiante, el procedimiento debe tener
como parámetros de entrada el id del
estudiante, el id de la materia, una vez hecha la
asignación, se debe mostrar “ESTUDIANTE
ASIGNADO A MATERIA”

Lic. Cristian Mercado Quispe - UPEA


EJERCICIOS
 Utilizar el procedimiento almacenado ASIGNA
MATERIA para registrar la siguiente
información
ID_CURSA ID_EST ID_MAT NOTA SEMESTRE GESTION
1 100 10 NULL I 2017
2 101 20 NULL I 2017
3 101 30 NULL I 2017
4 102 10 NULL I 2017
5 102 30 NULL I 2017

Lic. Cristian Mercado Quispe - UPEA


EJERCICIOS
Crear un procedimiento almacenado denominado
“reporte_estudiante” que reciba como parámetro
el id del estudiante, la gestión, el año y
devuelva como parámetro de salida la cantidad
de materias que esta cursando durante el periodo
señalado

Lic. Cristian Mercado Quispe - UPEA


EJERCICIOS
 Crear un procedimiento almacenado
denominado “reporte_materia” que reciba
como parámetro de entrada el id de la materia,
la gestión, el año y retorne como parámetro de
salida la cantidad de estudiantes que tiene.

Lic. Cristian Mercado Quispe - UPEA


EJERCICIOS
 Crear un procedimiento denominado
“registra_nota” que permita registrar las notas
de los estudiantes, el procedimiento tendrá
como parámetros de entrada el id del
estudiante, el id de la materia, gestión y el año.
Gestionar las excepciones.

Lic. Cristian Mercado Quispe - UPEA


EJERCICIOS
 Crear una función con parámetro de entrada el
id del estudiante y devuelva VERDAD si el
estudiante existe y FALSO si el estudiante no
existe.

Lic. Cristian Mercado Quispe - UPEA


Crear un procedimiento denominado
elimina_estudiante que reciba como parámetro
de entrada el id del estudiante y elimine su
registro. El procedimiento deberá eliminar
también las materias que cursa.
Si no existe el estudiante deberá mostrar un
mensaje de “NO EXISTE EL ESTUDIANTE”

Lic. Cristian Mercado Quispe - UPEA

También podría gustarte