Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
PL-SQL
PRACTICA 3
MAESTRO:
ALUMNO:
SEMESTRE: OCTAVO
GRUPO: B
1. Evalúa el bloque PL/SQL y determina los tipos de dato y el valor de cada una de
las siguientes variables de acuerdo con la reglas de alcance.
2. Usando el bloque anterior, determina los valores y los tipos de dato para cada uno
de los siguientes casos.
a. El valor de CUSTOMER en el bloque anidado es: 201
a. Comentar línea por línea las líneas que crean variables bind.
b. Comenta las líneas, en la sección ejecutable, que asignan valores a las
variables bind. Usa comentario para múltiples líneas.
c. Declara dos variables: fname de tipo VARCHAR2 y longitud 15, y emp_sal de
tipo NUMBER y longitud 10.
d. Incluir la siguiente sentencia SQL en la sección ejecutable:
SELECT first_name, salary
INTO fname, emp_sal FROM employees
WHERE employee_id=110;
e. Cambia la línea que imprime ‘Hello World’ para que despliegue ‘Hello’ y el
primer nombre. Comenta si quieres, las líneas que despliegan la fecha y las
variables bind
f. Calcular la contribución de los empleados al fondo de jubilación (PF).
PF es el 12% del salario base y el salario base es el 45% del salario. Usar
variables bind para el cálculo. Intenta usar solo una expresión para realizar
el cálculo. Despliega el salario del empleado y su contribución al fondo de
pensión.
g. Ejecuta y guarda tu script con el nombre lab_03_03_soln.sql. Ejemplo de
salida:
variable
basic_percent
number; variable
pf_percent number;
variable pf number;
SET SERVEROUTPUT ON
DECLARE
frase VARCHAR2(20);
fname
VARCHAR2(15
); EMP_SAL
NUMBER(10);
BEGIN
frase := 'Hello';
:basic_percent := 45; /*aqui se le asigno un valor y referenció una variable
Bind*/ :pf_percent := 12;
END;
DECLARE
emp_authorization
NUMBER(5); emp_id
NUMBER(5):=&emp_id;
emp_deptid
NUMBER(6):=&emp_deptid;
no_such_employee EXCEPTION;
DECLARE
emp_sal employee_details.salary
%TYPE; emp_fname
employee_details.first_name%TYPE;
emp_lname employee_details.last_name
%TYPE; i NUMBER:=1;
-- DECLARE AN INDEX BY TABLE OF TYPE VARCHAR2(50). CALL
-- IT ename_table_type
c_hike1 constant
real :=.20; c_hike2
constant real :=.15;
c_hike3 constant real :=.08;
c_hike4 constant real :=.03;
ELSE
DBMS_OUTPUT.PUT_LINE ('SORRY YOU ARE NOT AUTHORIZED TO USE THIS
APPLICATION'); END IF;