Prozeduren, Trigger und Anweisungsfolgen verwenden
Ergebnisse aus Prozeduren zurückgeben
Bevor Interactive SQL mehrfache Ergebnismengen zurückgeben kann, müssen Sie diese Option im Register "Ergebnisse" des Dialogfelds "Optionen" aktiviert haben. Standardmäßig ist diese Option deaktiviert. Wenn Sie die Einstellungen ändern, wirkt sich dies bei neu eingerichteten Verbindungen (z.B. neu geöffneten Fenstern) aus.
So aktivieren Sie die Funktion der mehrfachen Ergebnismengen
Wählen Sie "Extras > Optionen".
In dem sich nun öffnenden Dialogfeld "Optionen" klicken Sie auf das Register "Ergebnisse".
Aktivieren Sie das Kontrollkästchen "Mehrere Ergebnismengen zeigen".
Nachdem Sie diese Option aktiviert haben, kann eine Prozedur mehr als eine Ergebnismenge an die aufrufende Umgebung zurückgeben. Wenn eine RESULT-Klausel verwendet wird, müssen die Ergebnismengen kompatibel sein: Sie müssen dieselbe Anzahl von Elementen in den SELECT-Listen haben, und alle Datentypen müssen automatisch in jene Datentypen konvertierbar sein, die in der RESULT-Liste aufgelistet sind.
Die folgende Prozedur listet die Namen aller Mitarbeiter, Kunden und Kontaktpersonen auf, die in der Datenbank enthalten sind:
CREATE PROCEDURE ListPeople() RESULT ( lname CHAR(36), fname CHAR(36) ) BEGIN SELECT emp_lname, emp_fname FROM employee; SELECT lname, fname FROM customer; SELECT last_name, first_name FROM contact; END
Um diese Prozedur in Interactive SQL zu testen, geben Sie im Ausschnitt für die Eingabe von SQL-Anweisungen folgende Anweisung ein:
CALL ListPeople ()
SQL Anywhere Studio 9.0.1
Copyright © 1989–2004 Sybase Inc. Teil-Copyright © 2001–2004 iAnywhere Solutions Inc. Alle Rechte vorbehalten.