Documentos de Académico
Documentos de Profesional
Documentos de Cultura
PL/SQL
OBJETIVOS:
Acercar al alumno a la práctica del uso de procedimientos, funciones y triggers
abarcando los temas anteriores.
declare
v_n empleado.nom_emp%type;
v_s empleado.salario_sem%type;
v_c empleado.comision%type;
begin
consulta_emp(7654,v_n,v_s,v_c);
dbms_output.put_line(v_n || v_s || v_c);
end;
CGB 1
UTFSM – Sede Viña del Mar
EJERCICIOS
3) Crear una función que resuelva una ecuación de primer grado. Si la ecuación es
ax+b= 0, a y b son los datos a leer, las posibles soluciones son:
n! = 1*2*3*4*…*(n-1)*n
si: n<0 => retorna -1, n =0 => retorna 1, n>=1 => (n-1)!*n”
6) Escriba una función que reciba un empleo, por ejemplo ‘vendedor’ y que retorne el
promedio de salario de dicha actividad, si la actividad ingresada no existe que retorne
-1. Puede ocupar la función NVL que devuelve el valor recibido como parámetro en el
caso de que expresión sea NULL, o expresión en caso contrario: NVL(<expresion>,
<valor>), por ejemplo:
SELECT CO_PRODUCTO, NVL(PRECIO, 0) FROM PRECIOS;
devuelve 0 si el precio es nulo y si no lo es devuelve el valor de precio.
CGB 2
UTFSM – Sede Viña del Mar
b) Redacte un texto que indique exactamente (línea por línea) que está haciendo el
trigger
Luego haga:
8) Escribir un trigger que permita auditar antes de ocurrir, las modificaciones en la tabla
empleado insertando en la tabla auditaremple los siguientes datos:
- Fecha y hora
- Número de empleado
- Nombre de empleado
- La operación de actualización: MODIFICACIÓN.
- El valor anterior y el valor nuevo de cada columna modificada. (solo las columnas
modificadas). Debe ser campo por campo, por ejemplo:
IF UPDATING ('NOM_EMP') THEN …
Realizando un update a la tabla empleado, verifique lo que guarda la tabla auditaremple
CGB 3
UTFSM – Sede Viña del Mar
CGB 4