For security reasons, the owner of all objects is a separate user (schema). And we got next error when we work with public synonym.
Reproduce:
- SQL for creating object in other schema (HR) and public synonym:
create or replace package hr.test_pkg is
procedure a(v varchar2);
end;
/
create or replace package body hr.test_pkg is
procedure a(v varchar2) is
begin
null;
end;
end;
/
create or replace public synonym test_pkg for hr.test_pkg
/
- Open new SQL editor and type:
begin
test_pkg.a(‘1’);
end;
test_pkg.a(‘1’);
test_pkg
- When pressing Ctrl and clicking on first and second functions we get error:
12:07:44 Definition for test_pkg.a was not found
- When pressing Ctrl and clicking on third function we go to spec of package (setting Go to Definitions for package programs set to “Open body”).