Pergunta

Eu preciso fazer algumas alterações para um procedimento armazenado Oracle velho em uma caixa obsoleta que está sendo mantido em torno de executar um processo antigo legado. A única ferramenta que pode se conectar à db com é SQL Plus. Como faço para carregar um proc armazenados na memória para edição no SQL Plus?

Os tutoriais que eu encontrei on-line não exlain como isso é feito. : - (

Foi útil?

Solução 4

A caixa é HPUX sem TNS ouvinte em execução que praticamente anula a toda a frota de ferramentas de desenvolvimento. No entanto, o DBA foi capaz de se conectar usando uma ferramenta de administração chamado OEM e fazer as mudanças necissary. Obrigado a todos por suas sugestões.

Outras dicas

Seria muito mais fácil de download a versão trial do SAPO

zero a sugestão anterior, eu apenas tentei o link desenvolvedor Oracle SQL sugerido e ele funciona muito bem peachy para a edição de procs.

para SQLPlus você praticamente necessidade de exibir o conteúdo do proc armazenados, e carretel lo em um arquivo (como sugerido por DCookie :-)):

sqlplus> spool myprocname.sql;
sqlplus> select text from all_source where name = 'MYPROCNAME' and type = 'PROCEDURE' order by line;
sqlplus> quit;

, em seguida, editar o arquivo SQL local em um editor decente.

Em seguida, use SQLPlus para executar o arquivo SQL para re-construir o proc para o teste.

>sqlplus username/password@tnsnamesentry @myproc.sql

Em suma, uma dor enorme no keester. : -)

Você pode usar a função dbms_metadata.get_ddl para recuperar código, é muito melhor, então all_sources.

spool /tmp/my_proc.txt
set long 100000
select dbms_metadata.get_ddl('PROCEDURE','NAME','OWNER') from dual;
spool off

Se você pode se conectar ao banco de dados usando SQL * Plus, você deve ser capaz de se conectar usando um IDE SQL. Dito isto, você não pode abrir um proc para edição no SQL * Plus, mas você pode compilar um. Você pode copiar o seu proc atualizado para o prompt de comando (linha por linha, se necessário) e compilá-lo.

Se você precisar acessar a fonte de corrente na forma manual, você pode consultar a tabela de USER_SOURCE.

Eu sugiro fortemente que, no entanto, olhando para conectar ao DB com um IDE.

Você não pode baixar e instalar Oracle SQL Developer ? É grátis.

Para Unix, há Tora , (open source)

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top