create or replace package first_pckg IS
PROCEDURE print_name;
FUNCTION ret_eid return number;
END;
create or replace PACKAGE BODY FIRST_PCKG IS
ename employees.first_name%type;
eid employees.employee_id%type;
PROCEDURE print_name is
BEGIN
select first_name into ename from employees where employee_id=100;
dbms_output.put_line(ename);
END;
Function ret_eid return number is
BEGIN
select department_id into eid from employees where employee_id=100;
return eid;
END;
END;
我们可以使用execute first_pckg.print_name
在包中执行过程和函数有人可以告诉我如何执行整个包吗?
谢谢
答案 0 :(得分:0)
包声明类型,函数和过程:它基本上代表定义和代码的存储库。一般来说,“执行”一个包没有多大意义。
但是,软件包附带可选的初始化代码,该代码将在db会话期间第一次引用包中的符号时执行。在您的示例中:
create or replace package first_pckg IS
PROCEDURE print_name;
-- ...
Function ret_eid return number is
BEGIN
select department_id into eid from employees where employee_id=100;
return eid;
END;
BEGIN
-- package init code goes here ...
END package;