Está en la página 1de 5

1. Se desea dar un bono a los empleados.

De acuerdo a la siguiente escala


salarial:

De 2500 dólares a 4000 dólares un bono de 100 dólares.


De 4001 dólares a 8000 dólares un bono de 50 dólares.
De 8001 dólares en adelante un bono de 20 dólares

El procedimiento debe tener como parámetro de entrada el id del empleado y, de


entrada-salida el bono, en este último se debe almacenar el valor del bono de
acuerdo al resultado obtenido en el procedimiento.

Opcional adicional 20 dólares a los empleados que tienen hijos.

2.

3. Especificación y código de un procedimiento almacenado aplicado a la base de datos del


proyecto.

Solución
1.

DELIMITER //

CREATE PROCEDURE bono(

IN id_employees INT,

OUT bono INT

BEGIN
DECLARE salario int;

SELECT salary

FROMemployees

WHERE id_employees = salary ;

CASE id_employees

WHEN 100 THEN

SET bono = 100;

WHEN 105 THEN

SET bono = 50;

WHEN 121 THEN

SET bono = 20;

ELSE

SET bono = 0;

END CASE;

END//

DELIMITER ;
2.

use hr;

DELIMITER //

CREATE PROCEDURE sp_nivel_salarial(IN pa_employee_id INT(11),

OUT pa_nivel varchar(40))

BEGIN

SELECT CASE

WHEN salary < 2500.00 THEN 'Bajo'

WHEN salary >= 4000.00 AND salary < 8000.00 THEN 'MEDIO'

WHEN salary >= 8001.00 AND salary < 10000.00 THEN 'ALTO'

ELSE 'Fuera de rango'


END INTO pa_nivel

FROM employees WHERE employee_id = pa_employee_id;

END//

DELIMITER ;
3.

Nuestra base de datos va recibir como parámetro datos personales del usuario y retornara su
numero de usuario

También podría gustarte