Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                

Trabajo Numero Tres

Descargar como docx, pdf o txt
Descargar como docx, pdf o txt
Está en la página 1de 7

MODELAMIENTO Y GESTIÓN DE BASE DE DATOS TRABAJO

ENCARGADO

Apellidos y nombres: CARDENAS AÑASCO IVAN GIRALDO

EJECUCION DE PROCEDIMIENTOS, FUNCIONES Y CURSOR

1.- CURSOR.-

Sintaxis:
CURSOR Nombre_Cursor IS Sentencia_Select;

EJERCICIO N°01 Recupere los cinco primeros empleados con su historial su trabajo y los años
que trabajó (tabla JOB_HISTORY del esquema HR).
EJERCICIO N°02
▪Crear una tabla para almacenar los sueldos de los empleados.
–CREATE TABLE TOP_DOGS (
▪SalaryNUMBER(8,2)
▪);
▪Cree un bloque PL/SQL que determine cuáles son los empleados que tienen los sueldos
más altos.

Los sueldos no deberían estar duplicados.


Almacenar los sueldos en la tabla creada anteriormente.
2.- PROCEDIMIENTO.-

EJERCICIO N°01

Realice lo siguiente:

A) Cree un procedimiento denominado ADD_JOB para insertar un nuevo puesto de


trabajo en la tabla JOBS. Proporcione el identificador y el nombre del puesto de trabajo
utilizando dos parámetros.

B) Compile el código y llame al procedimiento utilizando ‘IT_DBA’ como identificador


del puesto de trabajo y ‘Administrador de la BD’ como nombre del puesto de trabajo.
Vea los resultados.
EJERCICIO N°02

Cree un procedimiento denominado QUERY_EMP para consultar la tabla EMPLOYEES y


recuperar el sueldo y el identificador del puesto de trabajo de un empleado cuando se
proporcione el identificador de dicho empleado.
A) Cree un procedimiento que devuelva el valor de las columnas SALARY y JOB_ID con
respecto a un identificador de empleado específico.
B) Pruebe con id de empleado igual a 120.
3.- FUNCIONES.-

1. Cree una función ‘Q_JOB’ para devolver el nombre de un puesto de trabajo.


A) Cree una función ‘Q_JOB’ para devolver el nombre de un puesto de trabajo a una variable de
host.
B) compile el código; cree una variable de host G_TITLE y llame a la función con el identificador
de puesto de trabajo ‘SA_REP’. Vea los resultados.
2. Cree una función ‘ANNUAL_COMP’ para devolver el sueldo anual aceptando dos
parámetros: el sueldo mensual del empleado y la comisión. La función debería tratar
valores NULL.

A) Cree y llame a la función ‘ANNUAL_COMP’, transfiriendo valores para la comisión y el


sueldo mensual. Cualquiera de los dos valores que se han transferido, o los dos, pueden
ser NULL, pero la función debería seguir devolviendo el sueldo anual, que no es NULL.
El sueldo anual se define por medio de la siguiente fórmula:

▪(sueldo*12) + (porcentaje_comision* sueldo*12)

–B) Utilice la función en una sentencia SELECT sobre la tabla EMPLOYEES del
departamento 80.
3. Cree un procedimiento NEW_EMP, para insertar un nuevo empleado en la tabla
EMPLOYEES. El procedimiento debería contener una llamada a la función
‘VALID_DEPARTID’ para comprobar si el identificador de departamento especificado
para el nuevo empleado existe en la tabla DEPARTMENTS.

A) Cree la función ‘VALID_DEPARTID’ para validar un identificador de departamento


específico. La función debería devolver un valor BOOLEANO.
B) Cree el procedimiento NEW_EMP para agregar un empleado a la tabla EMPLOYEES.
Debería agregar una nueva fila a la tabla EMPLOYEES si la función devuelve TRUE. Si la
función devuelve FALSE, el procedimiento debería alertar al usuario con el mensaje
adecuado.
-Defina valores por defecto para la mayoría de los parámetros. La comisión por defecto
es 0, el sueldo por defecto es 1000, el número de departamento por defecto es 30, el
nombre del puesto de trabajo por defecto es SA_REP y el identificador del jefe por
defecto es 145. Para el identificador del empleado, utilice la secuencia
EMPLOYEES_SEQ. Proporcione el nombre, el apellido y la dirección de correo
electrónico del empleado.

C) Pruebe el procedimiento NEW_EMP agregando una nueva empleada llamada ‘Vigilia


Llanos’ al departamento 15. deje los valores por defecto en le resto de los parámetros.
¿Cuál es el resultado?

D) Pruebe el procedimiento NEW_EMP agregando un nuevo empleado llamado


‘MIGUEL SUAREZ’ al departamento 80. Deje los valores por defecto en el resto de los
parámetros. ¿Cuál es el resultado?

También podría gustarte