< Zurück | Weiter >

Lerneinheit 4: pureQueryXML-Datei aus SQL-Anweisungen erstellen, die aus Java-Quellcode exportiert wurden

Extrahieren Sie SQL-Anweisungen mithilfe der Workbench aus Java-Code, erstellen Sie eine pureQueryXML-Datei aus SQL-Anweisungen und binden Sie die SQL-Anweisungen an die Datenbank.
Sie haben im Lernprogramm zuvor eine pureQueryXML-Datei erstellt, indem Sie Ihre Anwendung ausgeführt haben und SQL-Anweisungen erfasst haben. Eine weitere Möglichkeit, eine pureQueryXML-Datei zu erstellen, die SQL-Anweisungen aus Ihrer Anwendung enthält, ist die Extraktion des SQL-Codes aus Ihrem Anwendungsquellcode. Sie extrahieren die SQL-Anweisungen, die in der Workbench in der Sicht SQL Outline aufgelistet werden.

Gehen Sie wie folgt vor, um eine pureQueryXML-Datei aus SQL-Anweisungen zu erstellen, die aus Java-Quellcode exportiert wurden:

  1. Extrahieren Sie den SQL-Code aus der Anwendung.
    1. Öffnen Sie in der Sicht SQL Outline das Fenster Java-Projekte, indem Sie unten in der Sicht auf die Registerkarte Java klicken.
    2. Klicken Sie im Fenster Java-Projekte mit der rechten Maustaste auf Ihre Datei mit Java-Quellcode und klicken Sie auf SQL in Datei exportieren.
    3. Speichern Sie die Datei, die die extrahierten SQL-Anweisungen enthält, als dataAccessFolder\MySample.sql.

    Die Workbench erstellt die Datei dataAccessFolder\MySample.sql.

    Anmerkung: Nachdem Sie die Datei erstellt haben, können Sie die SQL-Datei im SQL-Editor öffnen, Cursorattributinformationen hinzufügen und die pureQueryXML-Datei über den SQL-Editor erstellen.
  2. Erstellen Sie eine pureQueryXML-Datei aus der SQL-Datei.
    1. Aktualisieren Sie bei Bedarf den Inhalt des Ordners dataAccessFolder im Paketexplorer, um die Datei MySample.sql anzuzeigen.
    2. Klicken Sie im Paketexplorer mit der rechten Maustaste auf die SQL-Datei und klicken Sie auf Datenzugriffsentwicklung > pureQueryXML-Datei generieren.
    3. Geben Sie im Fenster pureQueryXML aus SQL-Anweisungen generieren die Position der pureQueryXML-Ausgabedatei an und klicken Sie auf Weiter.
      • Wählen Sie im Feld Java-Projekt Ihr Projekt aus.
      • Geben Sie den Namen MySample.pdqxml in das Feld pureQueryXML-Dateiname ein.
    4. Überprüfen Sie die Aktualisierungen, die für die Datei 'Default.genProps vorgeschlagen werden.
      Die Workbench aktualisiert die Datei Default.gen.Props mit Informationen, die dem folgenden Text ähneln, in dem die Option -rootPkgName mit dem Wert myPkg für die pureQueryXML-Datei angegeben ist.
      C:\DS-tutorial\pq-tutorial\dataAccessFolder\MySample.pdqxml = -rootPkgName myPkg
    5. Klicken Sie auf Fertig stellen.

    Die Workbench erstellt die pureQueryXML-Datei dataAccessFolder\MySample.pdqxml.

  3. Zeigen Sie die pureQueryXML-Datei an.

    Klicken Sie im Paketexplorer doppelt auf die Datei dataAccessFolder\MySample.pdqxml.

    Die Datei wird im pureQueryXML-Editor geöffnet. Der Anweisungsgruppenname ist 'myPkg'.

  4. Schließen Sie die pureQueryXML-Datei.
  5. Binden Sie die SQL-Anweisungen in der pureQueryXML-Datei.
    1. Klicken Sie mit der rechten Maustaste auf die Datei capture.pdqxml und klicken Sie auf Data > Binden.
    2. Wählen Sie im Dialogfeld Verbindung auswählen die Datenbank SAMPLE aus und klicken Sie auf Fertig stellen.
    Die Workbench führt das Dienstprogramm StaticBinder aus und sendet die Ausgabe dieses Dienstprogramms in die Konsolsicht:
    ================================================================================
    
    Das Dienstprogramm StaticBinder beginnt die Bindeoperation für die pureQueryXml- 
        Datei 'C:\test\DS-tutorial\pq-tutorial\dataAccessFolder\MySample.pdqxml'.
    
    Start der Verarbeitung von Optionen:  
       -url "jdbc:db2://localhost:50000/SAMPLE:retrieveMessagesFromServerOnGetMessage=true;" 
       -username "*****" -password "*****" 
       -pureQueryXml "C:\test\DS-tutorial\pq-tutorial\dataAccessFolder\MySample.pdqxml"
    
    Das Dienstprogramm StaticBinder hat das Paket 'myPkgA1' für die Isolationsstufe 'UR' erfolgreich gebunden.
    Das Dienstprogramm StaticBinder hat das Paket 'myPkgA2' für die Isolationsstufe 'CS' erfolgreich gebunden.
    Das Dienstprogramm StaticBinder hat das Paket 'myPkgA3' für die Isolationsstufe 'RS' erfolgreich gebunden.
    Das Dienstprogramm StaticBinder hat das Paket 'myPkgA4' für die Isolationsstufe 'RR' erfolgreich gebunden.
    
    Die Bindeoperation wurde für
      'C:\test\DS-tutorial\pq-tutorial\dataAccessFolder\MySample.pdqxml'
    erfolgreich beendet.
    
    ================================================================================
    
    Ergebnisse der Aktivität des Dienstprogramms StaticBinder:
    
        Anzahl der Elemente, für die die Bindeoperation ERFOLGREICH WAR: 1
    
    
    Das Binden für die XML-Datei MySample.pdqxml unter Verwendung der Verbindung SAMPLE in Projekt pq-tutorial war erfolgreich.
  6. Aktualisieren Sie den Quellcode, um eine neue SQL-Anweisung auszuführen, und führen Sie die Anwendung aus.
    1. Öffnen Sie im Paketexplorer die Anwendung MySample.java.
    2. Legen Sie den Parameter in der Anwendung fest, um eine neue SQL-Anweisung auszuführen.

      Ändern Sie den Wert der Variablen i im folgenden Code in 2:

         if ( args.length == 0) {
         // value for the default SQL statement to run
            i = 2 ;
    3. Speichern Sie die Datei.
  7. Führen Sie die Anwendung aus.

    Klicken Sie mit der rechten Maustaste auf die Datei MySample.java und klicken Sie auf Ausführen als > Java-Anwendung.

    pureQuery Runtime gibt einen Fehler zurück, der angibt, dass die SQL-Anweisung in der pureQueryXML-Datei nicht gefunden werden kann.

    In der pureQuery Runtime-Eigenschaftendatei src/pdq.properties ist der Wert der Eigenschaft pureQueryXML dataAccessFolder/capture.pdqxml. Die pureQueryXML-Datei enthält nicht die SQL-Anweisung, die von der Anwendung ausgegeben wurde.

  8. Ändern Sie die Informationen in der Datei pdq.properties so, dass die Datei MySample.pdqxml als pureQueryXML-Datei festgelegt wird.
    1. Klicken Sie doppelt auf die Datei scr\pdq.properties.

      Die Datei wird im Editor für Eigenschaften paralleler Datenbankabfragen geöffnet.

    2. Legen Sie die Datei MySample.pdqxml als pureQueryXML-Datei fest, indem Sie den Wert der Eigenschaft pureQueryXML in dataAccessFolder/MySample.pdqxml ändern.
      pdq.captureMode=OFF
      pdq.capturedOnly=TRUE
      pdq.executionMode=STATIC
      pdq.pureQueryXml=dataAccessFolder/MySample.pdqxml
    3. Speichern Sie die Datei.
  9. Führen Sie die Anwendung aus.

    Klicken Sie mit der rechten Maustaste auf die Datei MySample.java und klicken Sie auf Ausführen als > Java-Anwendung.

    Die Anwendung wird ausgeführt. Die Ausgabe wird im Konsolfenster angezeigt. Die Ausgabe ähnelt dem folgenden Beispiel:
     =======
    IBM InfoSphere Optim pureQuery Runtime 3.1.0.0 Build 3.10.115
     =======
    case 2
    case 2 - large projects: 11
    Finished case 2

    Mit der richtigen Zuordnung zwischen der SQL-Anweisung und dem Paket in der Datenbank SAMPLE in der pureQueryXML-Datei MySample.jave kann pureQuery Runtime die Anweisung statisch ausführen.

Zusammenfassung

Sie haben SQL-Anweisungen aus Ihrem Anwendungsquellcode extrahiert und Sie haben eine pureQueryXML-Datei aus den SQL-Anweisungen erstellt.
Sie haben die folgenden Tasks über die Workbench ausgeführt:
  • SQL-Anweisungen aus einer Java-Codedatei extrahieren
  • SQL-Anweisungen in eine pureQueryXML-Datei konvertieren
  • Bindeprozess für die pureQueryXML-Datei ausführen
  • pureQuery Runtime durch Festlegen von pureQuery Runtime-Eigenschaften festlegen

In der Sicht SQL Outline haben Sie eine pureQueryXML-Datei aus einer Datei erstellt, die SQL-Anweisungen aus Ihrem Java-Quellcode enthält. Informationen zur Sicht SQL Outline finden Sie in Sicht 'SQL Outline'.

Sie können eine pureQueryXML-Datei auch außerhalb der Workbench aus einer Textdatei erstellen, die SQL-Anweisungen enthält. Verwenden Sie das Java-basierte pureQuery-Dienstprogramm GeneratePureQueryXml, um eine pureQueryXML-Datei aus einer Textdatei zu erstellen, die SQL-Anweisungen und optional Cursorattributinformationen enthält. Informationen zum Dienstprogramm finden Sie in Dienstprogramm GeneratePureQueryXml.

< Zurück | Weiter >

Feedback