Você vai ter que dar permissão direto no objeto,  se nao me engano dentro
de procedure a permissão de role não funciona.

De a permissão dessa forma:

grant select on sys.v$license to usuario;

faça o teste e retorne com o resultado.

At.
Marcelo Procksch

Em 11 de janeiro de 2012 13:44, emerson_sanches <
emerson_sanc...@yahoo.com.br> escreveu:

> **
>
>
> Infelizmente não deu certo............continua o mesmo erro.
>
> Mesmo assim, obrigado Fabio.
>
> --- Em oracle_br@yahoogrupos.com.br, Fabio Agarie <agarie@...> escreveu
>
> >
> > Tente colocar o owner sys.v$license.
> >
> > Regards,
> >
> > Fabio
> >
> > On 11/01/2012, at 14:45, "emerson_sanches" <emerson_sanches@...> wrote:
> >
> > > Bom dia pessoal da lista, tenho um usuário oracle que precisava fazer
> um select na tabela do sistema V$LICENSE então, logado com o usuário SYSTEM
> dei essa permissão com o comando:
> > >
> > > GRANT SELECT_CATALOG_ROLE TO <usuario>
> > >
> > > funcionou que é uma beleza, mas agora esta surgindo o seguinte
> problema, eu preciso usar um select desta tabela em um cursor dentro de uma
> procedure, porem, na procedure, gera o erro:
> > >
> > > ORA-00942: table or view does not exist
> > >
> > > era o mesmo erro que dava quando não tinha dado permissão de uso na
> tabela. Alguém sabe me dizer porque isso ocorre e como resolver?
> > >
> > > Obrigo pela atenção de todos.....
> > >
> > > Emerson Sanches
> > >
> > > Segue o código da procedure que gera o erro:
> > >
> > > CREATE OR REPLACE PROCEDURE SGI5_IUD_ADMD_LIC_LOG
> > > IS
> > > CURSOR C_USU IS
> > > SELECT A.SESSIONS_CURRENT USU_ATU,
> > > A.SESSIONS_HIGHWATER USU_MAX,
> > > A.CPU_COUNT_CURRENT COR_ATU,
> > > A.CPU_COUNT_HIGHWATER COR_MAX,
> > > A.CPU_SOCKET_COUNT_CURRENT SOK_ATU,
> > > A.CPU_SOCKET_COUNT_HIGHWATER SOK_MAX
> > > FROM V$LICENSE A;
> > >
> > > BEGIN
> > > FOR CR IN C_USU
> > > LOOP
> > > INSERT INTO SGI5_TAB_ADMD_LIC_LOG(LIC_DAT ,LIC_USU,
> > > LIC_USU_MAX,LIC_COR,
> > > LIC_COR_MAX,LIC_SOK,
> > > LIC_SOK_MAX)
> > > VALUES (SYSDATE ,CR.USU_ATU,
> > > CR.USU_MAX ,CR.COR_ATU,
> > > CR.COR_MAX ,CR.SOK_ATU,
> > > CR.SOK_MAX );
> > > END LOOP;
> > > END;
> > >
> > >
> >
> >
> > [As partes desta mensagem que não continham texto foram removidas]
> >
>
>  
>



-- 
Att.
Marcelo E. Procksch


[As partes desta mensagem que não continham texto foram removidas]



------------------------------------

--------------------------------------------------------------------------------------------------------------------------
>Atenção! As mensagens do grupo ORACLE_BR são de acesso público e de inteira 
>responsabilidade de seus remetentes.
Acesse: http://www.mail-archive.com/oracle_br@yahoogrupos.com.br/ 
--------------------------------------------------------------------------------------------------------------------------
>Apostilas » Dicas e Exemplos » Função » Mundo Oracle » Package » Procedure » 
>Scripts » Tutoriais - O GRUPO ORACLE_BR TEM SEU PROPRIO ESPAÇO! VISITE: 
>http://www.oraclebr.com.br/  
------------------------------------------------------------------------------------------------------------------------
 Links do Yahoo! Grupos

<*> Para visitar o site do seu grupo na web, acesse:
    http://br.groups.yahoo.com/group/oracle_br/

<*> Para sair deste grupo, envie um e-mail para:
    oracle_br-unsubscr...@yahoogrupos.com.br

<*> O uso que você faz do Yahoo! Grupos está sujeito aos:
    http://br.yahoo.com/info/utos.html


Responder a