-- Start of DDL Script for Package HR.CHG_EMP
-- Generated 6-Nov-2008 9:19:57 from HR@ORCL
CREATE OR REPLACE
PACKAGE chg_emp
IS
p_tax number;
dol2eur number := 1.2822;
anrede varchar2(20) := 'Hallo';
anfang date := to_date('20000101', 'yyyymmdd');
avg_sal number;
PROCEDURE get_emp
( emp_id IN number);
PROCEDURE get_emp;
/* procedure add_emp(
p_employee_id number,
p_first_name bonus.first_name%type,
p_last_name bonus.last_name%type);*/
procedure add_emp(
p_first_name bonus.first_name%type,
p_last_name bonus.last_name%type);
function change_tax(new_tax in number)
return number;
function get_tax
return number;
END; -- Package spec
/
CREATE OR REPLACE
PACKAGE BODY chg_emp
IS
tax number := 0.2;
function get_p_number(parameter varchar2)
return number
is
v_number number;
begin
select p_number into v_number from parameter
where p_name = parameter;
return v_number;
end;
function change_tax (new_tax number)
return number
is
begin
tax := new_tax;
return new_tax;
end;
function get_tax
return number
is
begin
return tax;
end;
PROCEDURE get_emp
( emp_id IN number)
IS
v_first_name bonus.first_name%type;
v_last_name bonus.last_name%type;
begin
select first_name, last_name into v_first_name, v_last_name
from bonus where employee_id = emp_id;
dbms_output.put_line(v_first_name||' '||v_last_name);
END;
PROCEDURE get_emp
IS
begin
for r_emp in (select employee_id from bonus) loop
get_emp(r_emp.employee_id);
end loop;
END;
procedure add_emp(
p_employee_id number,
p_first_name bonus.first_name%type,
p_last_name bonus.last_name%type)
is
begin
insert into bonus (
employee_id,
first_name,
last_name
) values (
p_employee_id,
p_first_name,
p_last_name);
end;
procedure add_emp(
p_first_name bonus.first_name%type,
p_last_name bonus.last_name%type)
is
v_seq number;
begin
select employees_seq.nextval into v_seq from dual;
add_emp(v_seq, p_first_name, p_last_name);
end;
begin
p_tax := get_p_number('tax');
-- Enter further code below as specified in the Package spec.
END;
/
-- End of DDL Script for Package HR.CHG_EMP