Samstag, 19. August 2017
Tipp/Trick
Unbegrenzte Textausgabe in SQL*Plus erhalten
Oracle Database 10g Release 2 für Linux

Mit dem SQL*Plus-Parameter SERVEROUTPUT schaltet man die Anzeige von Ausgabetext ein und aus. Es handelt sich hier nicht um die normalen Ergebnisse eines SELECT-Befehls, sondern um Texte, die mit dem Package DBMS_OUTPUT ausgegeben werden:

Hide
<10.1>:SCOTT@PABLO> set serveroutput off
<10.1>:SCOTT@PABLO> exec dbms_output.put_line('Kommt dieser Text an?');

PL/SQL procedure successfully completed.

<10.1>:SCOTT@PABLO> set serveroutput on
<10.1>:SCOTT@PABLO> exec dbms_output.put_line('Kommt dieser Text an?');
Kommt dieser Text an?

PL/SQL procedure successfully completed.

<10.1>:SCOTT@PABLO> 

Beim ersten Versuch vermisst man die gewünschte Textausgabe. Erst bei der Einschaltung der Server-Ausgabe mit dem SET-Befehl wird der Text angezeigt.

Vor der zweiten Release von Oracle 10g wurde die Puffergröße dieser Ausgabe standardmäßig auf 2000 Byte gesetzt, man konnte sie aber auf 1000000 Byte erhöhen. Je nachdem, was Sie für eine Routine gerade ausführen, kann auch diese Grenze schnell überschritten werden. Ab Release 2 können Sie dafür die Größe auf „unbegrenzt“ setzen, was übrigens auch der Standardwert ist:

Damit sind Ihren Textausgaben keine Grenzen mehr gesetzt.

Leserbrief / Frage zu Oracle

 
www.trinidat.de 
 
www.fulldotnet.de 
Ein Service der TriniDat Software-Entwicklung GmbH - Am Wehrhahn 45 - 40211 Düsseldorf