You can use pureQuery client optimization with CLI applications
that connect to either an Informix® Dynamic
Server or a DB2® database as
a data server.
Only DB2 databases
support executing SQL statements statically. However, when using a
CLI application that is enabled with pureQuery client optimization
with an IDS data server, you can enable pureQuery features including
the following:
- Execute alternate SQL statements
- Using the enableDynamicSQLReplacement keyword,
you can tune the SQL statements by providing an alternate SQL statement
in pureQueryXML file. So that during application runtime, this optimized
statement will be passed to the IDS server.
- SQL statement literal substitution
- pureQuery client optimization supports SQL statement literal substitution.
pureQuery Runtime can replace literal data in SQL statements with
parameter markers. This capability helps control the size of the pureQueryXML
file. SQL statement literal substitution provides better problem determination.
Similar SQL statements can be grouped into single SQL statement in
pureQueryXML file. (with different stack trace information based on
where the statements are placed in the application code).
- Run only captured SQL statements
- CLI applications that are enabled with pureQuery client optimization
support the captureOnly= TRUE keyword with an IDS
data source. This capability helps to prevent SQL injection by limiting
the SQL statements executed dynamically by the application to the
SQL statements listed in pureQueryXML file.
Note: The staticBinder utility cannot be run
against an IDS database. Also, the executionMode=STATIC keyword
is not supported for a CLI application connected to an IDS database.
If
you specify a pureQuery Runtime keyword that is not supported with
an IDS data server, it is ignored.