4 Stimmen

SP_HELPTEXT in Oracle

Ich verwende SSIS, um eine Verbindung zur ORACLE-Datenbank herzustellen, und ich möchte TEXT für einige Ansichten anzeigen. Ich habe dies befolgt Link aber ich erhalte einen ungültigen Syntaxfehler.

SET LINESIZE 132
SET LONG 4000
SELECT TEXT FROM ALL_SOURCE WHERE NAME = 'YOUR_PROCEDURE_NAME'

Bitte schlagen Sie eine andere Alternative vor.

Aktualisierung:

In der Zwischenzeit habe ich nach einer anderen Option gesucht

select TEXT from ALL_VIEWS where view_name = 'YOUR_PROCEDURE_NAME'

Dies wird erfolgreich geparst, aber ORA -24374 definieren nicht getan, bevor der Fehler kommt

3voto

a_horse_with_no_name Punkte 489934

Als Alternative können Sie das Paket dbms_metadata verwenden:

Für einen Ausblick:

select dbms_metadata.get_ddl('VIEW', 'YOUR_VIEW_NAME')
from dual;

Sie verwenden "Prozedurname" als Parameter, daher bin ich mir nicht sicher, ob Sie tatsächlich versuchen, die Quelle für eine gespeicherte Prozedur zu erhalten. In diesem Fall benötigen Sie etwas wie dieses:

select dbms_metadata.get_ddl('PROCEDURE', 'YOUR_PROCEDURE_NAME')
from dual;

0voto

Pratik Punkte 1448

Dies funktionierte schließlich in SQL PLUS. Ich bin mir nicht sicher, warum dies nicht mit dem SSIS-Adapter funktioniert.

select TEXT from ALL_VIEWS where view_name = 'YOUR_PROCEDURE_NAME'

0voto

Glenn Mateus Punkte 319

Ich habe diesen Ansatz getestet, hatte aber keinen Erfolg, weil er nicht alle Schemata meiner Datenbank durchsucht hat.

select TEXT from ALL_VIEWS where view_name = 'YOUR_PROCEDURE_NAME' 

Also habe ich einen anderen gefunden, der mir dabei helfen könnte!

select text
from dba_source
where NAME='YOUR_SP_NAME'

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X