Click here to view and discuss this page in DocCommentXchange. In the future, you will be sent there automatically.

SQL Anywhere 11.0.1 (Deutsch) » SQL Anywhere Server - Programmierung » SQL Anywhere Datenzugriff-APIs » SQL Anywhere JDBC-Treiber » JDBC für den Zugriff auf Daten verwenden

 

Ergebnismengen liefern

Dieser Abschnitt beschreibt, wie eine oder mehrere Ergebnismengen aus Java-Methoden verfügbar gemacht werden.

Sie müssen eine Java-Methode erstellen, die mindestens eine Ergebnismenge an die aufrufende Umgebung zurückgibt, und diese Methode in eine gespeicherte SQL-Prozedur einfügen. Das folgende Codefragment veranschaulicht, wie mehrere Ergebnismengen an den aufrufenden SQL-Code zurückgegeben werden können. Es verwendet drei executeQuery-Anweisungen, um drei verschiedene Ergebnismengen zu erhalten.

public static void Results( ResultSet[] rset )
       throws SQLException
{
    // Demonstrate returning multiple result sets

    Connection con = DriverManager.getConnection(
                    "jdbc:default:connection" );
    rset[0] = con.createStatement().executeQuery(
        "SELECT * FROM Employees" +
        "   ORDER BY EmployeeID" );
    rset[1] = con.createStatement().executeQuery(
        "SELECT * FROM Departments" +
        "   ORDER BY DepartmentID" );
    rset[2] = con.createStatement().executeQuery(
        "SELECT i.ID,i.LineID,i.ProductID,i.Quantity," +
        "       s.OrderDate,i.ShipDate," +
        "       s.Region,e.GivenName||' '||e.Surname" +
        "   FROM SalesOrderItems AS i" +
        "   JOIN SalesOrders AS s" +
        "   JOIN Employees AS e" +
        "   WHERE s.ID=i.ID" +
        "        AND s.SalesRepresentative=e.EmployeeID" );
    con.close();
}
Quellcode verfügbar

Dieses Codefragment ist Teil der JDBCExample-Klasse, die im Verzeichnis Beispielverzeichnis\SQLAnywhere\JDBC enthalten ist.

Hinweise
  • Dieses serverseitige JDBC-Beispiel stellt unter Verwendung von getConnection eine Verbindung mit der laufenden Standarddatenbank her.

  • Die executeQuery-Methoden geben Ergebnismengen zurück.

♦  So führen Sie das Beispiel der JDBC-Ergebnismenge aus
  1. Über Interactive SQL stellen Sie als Benutzer DBA eine Verbindung mit der Beispieldatenbank her.

  2. Die Klasse JDBCExample muss installiert sein.

    Weitere Hinweise, wie Sie die Java-Beispiele installieren können, finden Sie unter Vorbereitung der Beispiele.

  3. Definieren Sie eine gespeicherte Prozedur namens JDBCResults, die als Wrapper für die Methode JDBCExample.Results in der Klasse agiert:

    CREATE PROCEDURE JDBCResults()
      DYNAMIC RESULT SETS 3
      EXTERNAL NAME 'JDBCExample.Results([Ljava/sql/ResultSet;)V'
      LANGUAGE JAVA;
  4. Setzen Sie die folgenden Interactive SQL-Optionen, sodass Sie alle Ergebnisse der Abfrage sehen können:

    1. Wählen Sie im Menü Extras den Eintrag Optionen.

    2. Klicken Sie auf SQL Anywhere.

    3. Klicken Sie auf das Register Ergebnisse.

    4. Setzen Sie den Wert für Maximale Anzahl von anzuzeigenden Zeilen auf 5000.

    5. Wählen Sie Alle Ergebnismengen anzeigen.

    6. Klicken Sie auf OK.

  5. Rufen Sie die Methode JDBCExample.Results wie folgt auf:

    CALL JDBCResults();
  6. Überprüfen Sie die einzelnen Ergebnisregister "Result Set 1", "Result Set 2" und "Result Set 3".