Sie können die pureQuery-Clientoptimierung für CLI-Anwendungen verwenden, die die Verbindung zu Informix Dynamic
Server oder zu einer DB2-Datenbank als Datenserver herstellen .
Lediglich DB2-Datenbanken unterstützten die statische Ausführung von SQL-Anweisungen. Bei der Verwendung einer für die pureQuery-Clientoptimierung aktivierten CLI-Anwendung mit einem IDS-Datenserver können Sie unter anderem die folgenden pureQuery-Features aktivieren:
- Alternative SQL-Anweisungen ausführen
- Mit dem Schlüsselwort enableDynamicSQLReplacement können Sie die SQL-Anweisungen optimieren, indem Sie eine alternative SQL-Anweisung in einer pureQueryXML-Datei bereitstellen. Während der Anwendungsausführung wird diese optimierte Anweisung an den IDS-Server übergeben.
- Literalersetzung bei SQL-Anweisungen
- Die pureQuery-Clientoptimierung unterstützt Literalersetzung bei SQL-Anweisungen.
pureQuery Runtime kann Literaldaten in SQL-Anweisungen durch Parametermarken ersetzen. Mit dieser Funktionalität können Sie die Größe der pureQueryXML-Datei steuern. Literalersetzung bei SQL-Anweisungen bietet bessere Fehlerbestimmung.
Ähnliche SQL-Anweisungen können können zu einer einzelnen SQL-Anweisung in einer
pureQueryXML-Datei gruppiert werden (mit unterschiedlichen Stack-Trace-Informationen basierend auf der Position der Anweisungen im Anwendungscode).
- Nur erfasste SQL-Anweisungen ausführen
- Für die pureQuery-Clientoptimierung aktivierte CLI-Anwendungen unterstützen das Schlüsselwort captureOnly= TRUE mit einer IDS-Datenquelle. Mit dieser Funktionalität können Sie SQL-Injection verhindern, indem Sie die durch die Anwendung dynamisch ausgeführten SQL-Anweisungen auf die in der pureQueryXML-Datei aufgelisteten SQL-Anweisungen begrenzen.
Anmerkung: Das Dienstprogramm StaticBinder kann für eine IDS-Datenbank nicht ausgeführt werden. Zudem wird das Schlüsselwort executionMode=STATIC für eine mit einer IDS-Datenbank verbundenen CLI-Anwendung nicht unterstützt.
Geben Sie ein pureQuery Runtime-Schlüsselwort an, das für einen IDS-Datenserver nicht unterstützt wird, wird es ignoriert.