如何限定函数或过程调用以指示它 应该在全球范围内吗?我有自己的scn_to_timestamp() 在一个需要调用默认全局函数的包中 同名。
create or replace package px as
function scn_to_timestamp(scn number) return timestamp;
end px;
create or replace package body px as
function scn_to_timestamp(scn number) return timestamp is
begin
-- how do I qualify this to refer to the global function?
return scn_to_timestamp(scn);
end;
end px;
更新:事实证明,没有“全局”功能,因为所有功能都存在于架构下。看起来像全局的实际上是公共同义词,因此您所要做的就是在调用前加上导出函数的模式,在这种情况下:
return sys.scn_to_timestamp(scn);
答案 0 :(得分:2)
只需使用模式名称来引用全局。 我使用了架构所有者。
create or replace package px as
function scn_to_timestamp(scn number) return timestamp;
end px;
create or replace package body px as
function scn_to_timestamp(scn number) return timestamp is
begin
-- how do I qualify this to refer to the global function?
return sys.scn_to_timestamp(scn);
end;
end px;