Oracle 程序包里 直接调用 存储过程

创建一个包 test1


create or replace package  test1 
is
    PROCEDURE t1;
    function t2 return number;
end test1;

创建包的主体 test1,里面有个存储过程 t1,还有一个调用 t1

create or REPLACE package body test1 
is
    PROCEDURE t1 is
    begin
    DBMS_OUTPUT.PUT_LINE(sysdate);
    end;
    
    function t2 return number is
    begin
    return 1;
    end;
    
    begin
    TEST1.T1;
end test1;

执行方法

DECLARE
begin
TEST1.T1;
end;

首次执行,会输出两次



扫描二维码关注公众号,回复: 512142 查看本文章

当我们再次执行时,只输出了一次。



当每个连接的新用户,执行存储过程里任意一个存储过程 或者 函数,包里的调用都会执行。


猜你喜欢

转载自blog.csdn.net/qq_25775675/article/details/78466539