PL-SQL: Einführung1
Mit der Oracle Funktion DBMS_OUTPUT.PUT_LINE können Zeichenketten ausgegeben werden, die nicht das Ergebnis einer SQL-Abfrage sind. Allerdings dürfen die Zeichenketten nicht länger als 255 Zeichen sein, sonst kommt es zu einem Abbruch. Wir werden noch eine Funktion vorstellen, die auch längere Zeichenketten ausgeben kann, aber vorerst müssen wir mit 255 Zeichen vorlieb nehmen. In der Oracle 10g Version sollte die Funktion auch mehr Zeichen ausgeben können. Als Einstieg wollen wir nun in SQL*PLUS unsere erste Ausgabe erhalten.
Vorher nicht vergessen in SQL*PLUS auf
SET SERVEROUTPUT ON
zu stellen. Das ist einer der häufigsten Dinge, die vergessen werden und einen beim Testen zur Verzweiflung bringen.
In PL*SQL würde unser Beispiel 'Hello World' ungefähr so aussehen
Listing: HelloWorld.SQL
[Bearbeiten]BEGIN
DBMS_OUTPUT.PUT_LINE('Hello World') ;
END;
Das war doch gar nicht so schwer, oder?
Vorgehensweise in SQL*PLUS
[Bearbeiten]Es empfiehlt sich die Anlage einer Datei z.B. mit dem Namen helloworld.plsql:
create or replace PROCEDURE helloworld is BEGIN DBMS_OUTPUT.PUT_LINE('Hello World'); END; /
Ein Aufruf von sqlplus nach dem Schema:
sqlplus user/password @helloworld.plsql
kompiliert die Prozedur. Eventuelle Fehlermeldungen können in SQL*PLUS mit
SQL> show err;
eingesehen werden.
Der Aufruf der Prozedur kann dann mit
SQL> set serverout on; SQL> begin helloworld; end; SQL> /
erfolgen.