Alguns códigos PL/SQL podem não encontrar o próprio OWNER dentro da aplicação.
Procedimento abaixo mostra como a solução é simples para quando um código PL não encontra objetos do próprio schema.
CREATE TABLE lana.user1 (x NUMBER); Table created DECLARE x lana.user1.x%TYPE; BEGIN NULL; END; / ORA-06550: line 3, column 12: PLS-00302: component 'LANA' must be declared ORA-06550: line 3, column 6: PL/SQL: Item ignored
Observe que o código pl/sql não reconheceu o owner, o que é estranho pois não precisamos identificar o owner dentro do código.
SQL> DECLARE x user1.x%TYPE; BEGIN NULL; END; / PL/SQL procedure successfully completed.
SQL> conn / as sysdba Connected. SQL> CREATE OR REPLACE SYNONYM LANA FOR LANA.LANA; Synonym created.
Você é obrigado a criar o sinônimo referenciando um owner de um outro owner obviamente.
DECLARE x lana.user1.x%TYPE; BEGIN NULL; END; / PL/SQL procedure successfully completed
Artigos correlatos
Autor: Leandro Lana
Trabalho com banco de dados Oracle desde 2006, já trabalhei com as plataformas 9i, 10G e 11G.
Trabalhando atualmente como consultor Oracle na Sensatus Gestão de dados.
Administrador e cofundador do site www.oraclehome.com.br
Contato: leandro_lana@terra.com.br
Fone: (47) 9191-6052 / (47) 3330-0828












