Chamar procedure de outra tablespace

Dúvidas, dicas e truques de PL/SQL. Aqui também vão assuntos relacionados a pacotes, triggers, funções, Java-Stored Procedures, etc
Responder
Pablo
Rank: DBA Júnior
Rank: DBA Júnior
Mensagens: 190
Registrado em: Sex, 27 Out 2006 11:12 am
Localização: 88350000
Pablo

Mestres, boa tarde.

Possuo 2 table space...e quero acessar a procedure da tablespace A na tablespace B....
O esquema de fazer "A.NOME_DA_PROCEDURE" não funciona,,como faço pra habilitar?

Banco 11g.


Obrigado
Avatar do usuário
stcoutinho
Moderador
Moderador
Mensagens: 850
Registrado em: Qua, 11 Mai 2011 5:15 pm
Localização: são Paulo - SP

Pablo,

Bom dia,

Na verdade, uma procedure está associada a um schema e não a uma tablespace. Seu "código fonte" está armazenado em tabelas do dicionário de dados (ex: USER_SOURCE/ALL_SOURCE/DBA_SOURCE).

Por outro lado, uma tabela ou índice - além de pertencer a um schema - está associada a uma tablespace.

Um schema corresponde a um usuário de banco que possui "objetos de banco" embaixo dele. Estes objetos podem ser tabelas, indices, sequences, procedures, functions, packages, etc.

Explicado este conceito, vamos à prática: Digamos então que você possue dois usuários de banco : "USER_A" e "USER_B", sendo que "USER_B" possui uma procedure de nome "SP_EXEMPLO".

Você deseja que USER_A consiga executar esta procedure. Como fazer?

A) Crie um sinonimo privado em USER_A para referencia esta procedure em USER_B:
CREATE OR REPLACE SYNONYM USER_A.SP_EXEMPLO FOR USER_B.SP_EXEMPLO;
B) Conecte-se como SYSDBA ou USER_B e atribua a permissão de acesso à procedure:
GRANT ALL ON USER_B.SP_EXEMPLO TO USER_A;

Somente uma observação: Não sei o que executa a USER_B.SP_EXEMPLO, mas desconfio que ela faça operações somente nas tabelas do schema USER_B. Veja bem o que precisa fazer, ok?

Abraços,

Sergio Coutinho
Pablo
Rank: DBA Júnior
Rank: DBA Júnior
Mensagens: 190
Registrado em: Sex, 27 Out 2006 11:12 am
Localização: 88350000
Pablo

Bom dia Sergio.

Puxa vida cara...obrigado pela explicação...sou um "zero a esquerda" em bd. por isso a confusão...mas,,,deu certinho o que você explicou....


Muito obrigado e tenha um excelente dia.
Avatar do usuário
stcoutinho
Moderador
Moderador
Mensagens: 850
Registrado em: Qua, 11 Mai 2011 5:15 pm
Localização: são Paulo - SP

Oi Pablo,

O motivo da existência deste forum é justamente o de trocar experiências entre os foristas.
Tem muita coisa que eu também não sei e que preciso da ajuda dos colegas !

Seja bem vindo sempre que precisar de alguma coisa .. e fique à vontade para contribuir no GLUFKE.

Abraços,

Sergio Coutinho
Responder
  • Informação
  • Quem está online

    Usuários navegando neste fórum: Nenhum usuário registrado e 13 visitantes