Erro de permissão no Oracle

[ad#texto]

Quando tentamos acessar algum objeto do Oracle por alguma aplicação externa (PHP, Java, C#, etc) e recebemos o seguinte erro:

ora-06550: line string, column string: string

ou

ora-00942: table or view does not exist

Esse erro pode ocorrer por diversos problemas, os mais comuns é a falta de um GRANT ou uma ROLE, porém os erros que menos ocorrem são os que são mais difíceis de serem resolvidos.

Este erro também pode ser disparado caso você esteja acessando uma instancia errada.

Explicando melhor, em um ambiente de grande porte diversas instancias do Oracle pode estar espalhadas em diversos servidores, assim caso o seu editor de PL/SQL esteja apontando para uma instancia e a sua aplicação para outra pode ser que ao realizar testes no editor PL/SQL tudo transcorra bem mas a aplicação emita o erro acima.

Para verificar em qual instancia você está executando o PL/SQL pode utilizar a query abaixo:

select instance_name, host_name from v$instance;

A partir daí é só corrigir e pronto.

Petter Rafael

Desenvolvedor Web atua com as tecnologias Java e PHP apoiadas pelos bancos de dados Oracle e MySQL. Além dos ambientes de desenvolvimento acima possuiu amplo conhecimento em servidores Apache/Tomcat, Photoshop, Arte & Foto, Flash e mais uma dezena de ferramentas e tecnologias emergentes. Atualmente colabora com o Viablog escrevendo sobre programação e tecnologia.