Entradas

Mostrando entradas de octubre 19, 2016

Funciones en Oracle DataBase 11g XE

/*Creación de Funciones con HR*/
--Funcion que halla el 10% del salario
create or replace function f_bono_emp(salario number)
return number
is
begin
return (salario * 0.10);
end;
--Probar
begin
  dbms_output.put_line('Bono Salario: ' || f_bono_emp(1500));
end;

--Funcion que obtiene el Maximo Salario de los empleados
create or replace function f_Maximo_Salario
return number
is
v_sal employees.salary%type;
begin
select max(salary) into v_sal
from employees;
return v_sal;
end;
--Probar
begin
  dbms_output.put_line('Maximo Salario: ' || f_Maximo_Salario());
end;

--Funcion que halla el 10% del salario
create or replace function f_Salario_emp(p_cod in char)
return number
is
v_sal employees.salary%type;
begin
select salary into v_sal
from employees
where employee_id=p_cod;
return v_sal;
end;
--Probar
begin
  dbms_output.put_line('Salario: ' || f_Salario_emp(200));
end;

Procedimientos con Oracle DataBase 11g XE

/*Creación de Procedimientos con HR*/
--habilitar salida de archivo de comandos
set serveroutput on;
--Procedimiento para Agregar Registros
create or replace procedure pa_insertar_paises
(p_id in char, p_name in varchar2, p_regid in number)
is
begin
  insert into countries
  values(p_id, p_name, p_regid);
  dbms_output.put_line('Se Registro el Pais');
end;
--probar
begin
  pa_insertar_paises('PE','Perú',2);
end;
--VER
select * from countries where country_id='PE';
--Registrar Nuevo Pais
begin
  pa_insertar_paises('CO','Colombianas',3);
end;
--VER
select * from countries where country_id='CO';

/*Procedimiento para Actualizar Registros*/
create or replace procedure pa_actualizar_pais
(p_name varchar2, p_codreg number, p_id char)
is
begin
  update countries set country_name = p_name,
  region_id = p_codreg
  where country_id = p_id;
  dbms_output.put_line('Se Actualizo el Pais');
end;
--probar
begin
  pa_actualizar_pais('…