Skip to main content

Ejemplo Constrains Oracle


Incrementar los salarios de los empleados del departamento ‘IT’ en 1%, levantar una excepción en caso de que el salario 
actualizado exceda el salario máximo permitido para el puesto 


DECLARE
  name_department  departments.department_name%TYPE := 'IT';
incremento number := 1;
nvo_salario employees.SALARY%TYPE;
CURSOR CIncEmp(name_dept departments.department_name%TYPE) IS
    SELECT employee_id, first_name ||' '|| last_name as NombreEmp, salary, max_salary
FROM employees join jobs using(job_id)
JOIN departments using(department_id)
WHERE department_name = name_dept
    ORDER BY employee_id
    FOR UPDATE OF salary NOWAIT;

  BEGIN

  FOR RegEmp IN CIncEmp(name_department) LOOP
    DBMS_OUTPUT.PUT_LINE('ID. Empleado: ' || ' ' || RegEmp.employee_id);
DBMS_OUTPUT.PUT_LINE('Nombre Empleado: ' || ' ' || RegEmp.NombreEmp);
DBMS_OUTPUT.PUT_LINE('Salario Actual: ' || ' ' || RegEmp.salary);
DBMS_OUTPUT.PUT_LINE('% Incremento: ' || ' ' || Incremento/100);
Nvo_Salario:= RegEmp.salary * (1 + (incremento/100));
IF Nvo_Salario <= RegEmp.max_salary THEN
      UPDATE employees   SET salary = Nvo_Salario
      where current of CIncEmp;
DBMS_OUTPUT.PUT_LINE('Nuevo Salario ' || ' ' || Nvo_Salario);
    ELSE
      DBMS_OUTPUT.PUT_LINE('El aumento excede el limite preestablecido ' || RegEmp.salary ||' ' ||Nvo_Salario);
    END IF;
  END LOOP;
commit;
END;

Comments

Popular posts from this blog

boleta, cliente, nombre en Java

import java.util.ArrayList; public class Cliente { private String nombre; private ArrayList boletas; public Cliente(String nombre) { this.nombre = nombre; this.boletas = new ArrayList(); } public String getNombre() { return this.nombre; } public void agregarBoleta(Boleta boleta) { boletas.add(boleta); } public void imprimirHistorial() { Boleta b; System.out.println("Nombre: " + nombre); for (int i=0; i b = (Boleta)boletas.get(i); b.imprimir(); } } } public class Articulo { private String descripcion; private int stock; private int precio; public Articulo(String descripcion,int stock,int precio){ this.descripcion = descripcion; this.stock = stock; this.precio = precio; } public String getDescripcion() { return this.descripcion; } public int getStock() { return this.stock; } public int getPrecio() { return this.precio; } } import java.util.ArrayList; public class Boleta { private String fecha; private int total; private ArrayList ar...

ALU ( arithmetic logic unit ) vhdl codigo

library IEEE; use IEEE.STD_LOGIC_1164.ALL; use IEEE.STD_LOGIC_ARITH.ALL; use IEEE.STD_LOGIC_UNSIGNED.ALL; entity operaciones is port( clk: in std_logic; switch1,switch2,push1,push2: inout std_logic; display: out std_logic_vector (7 downto 0):="00000000"; leds, anodos: out std_logic_vector (3 downto 0):="0000"); end operaciones; architecture Behavioral of operaciones is signal barrido,bleds,modo: std_logic_vector (1 downto 0):="00"; signal break,break2: std_logic :='0'; signal mode,anod: std_logic_vector (3 downto 0):="0000"; signal contador: std_logic_vector (9 downto 0):="0000000000"; signal disp,disp1,disp2,disp3: std_logic_vector (7 downto 0):="00000010"; signal x,y,z,w: std_logic_vector (3 downto 0):="0000"; signal x2,y2,z2,w2: std_logic_vector (3 downto 0):="0000"; signal matr: std_logic_vector (3 downto 0):="0000"; signal dispa,disp1a,disp2a,disp3...

Comienzo de un principio

con esto empezare a ver como es el mundo de los blogs y empezare a probar que es mejor por que tenia un ideal una meta y se acabo me la cortaron entonces salio esta oportunidad para tenerla  cercas, vere si puedo hacer publicidad y mandarme ha hacer algunas playeras jajaja  gracias por los animos Deabolix