Question

Je dois apporter quelques modifications à une ancienne procédure stockée Oracle sur une boîte obsolète qui est maintenu autour d'exécuter un ancien processus existant. Le seul outil que je peux me connecter à la DB avec SQL est Plus. Comment puis-je charger une procédure stockée dans la mémoire pour l'édition dans SQL Plus?

Les tutoriels que j'ai trouvé en ligne n'exlain comment cela est fait. : - (

Était-ce utile?

La solution 4

La boîte est HPUX sans marche auditeur TNS qui efface à peu près sur l'ensemble du parc d'outils de dev. Cependant, le DBA a pu se connecter à l'aide d'un outil d'administration appelé OEM et faire les changements necissary. Merci à tous pour vos suggestions.

Autres conseils

  

Il serait beaucoup plus facile à télécharger   la version d'essai de TOAD

rien que la suggestion précédente, je viens d'essayer le lien Oracle SQL Developer suggéré et il fonctionne très bien Peachy pour procs d'édition.

SQLPlus vous avez assez bien besoin d'afficher le contenu de la procédure stockée, et la bobine dans un fichier (comme suggéré par DCookie :-)):

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

puis modifiez le fichier SQL local dans un éditeur décent.

Ensuite, utilisez SQLPlus pour exécuter le fichier SQL pour reconstruire le proc pour les tests.

>sqlplus username/password@tnsnamesentry @myproc.sql

En bref, une douleur massive dans le keester. : -)

Vous pouvez utiliser la fonction pour récupérer le code dbms_metadata.get_ddl, il est beaucoup mieux que all_sources.

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

Si vous pouvez vous connecter à l'aide de db SQL * Plus, vous devriez être en mesure de se connecter en utilisant un IDE SQL. Cela dit, vous ne pouvez pas ouvrir un proc pour modifier dans SQL * Plus, mais vous pouvez compiler un. Vous pouvez copier votre proc mis à jour dans l'invite de commande (ligne par ligne si nécessaire) et le compiler.

Si vous avez besoin d'accéder à la source de courant dans le mode manuel, vous pouvez interroger la table USER_SOURCE.

Je suggère fortement, examine toutefois la connexion à la base de données avec un IDE.

Pouvez-vous pas télécharger et installer Oracle SQL Developer ? Il est gratuit.

Pour Unix, il y a TOra , (open source)

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top