Configuring JDBC providers to use pureQuery to access Informix

Use this task to configure the application data source Java™ Database Connectivity (JDBC) provider to use pureQuery to access Informix® in a Java EE environment.

About this task

PureQuery provides heterogeneous batching which performs better than homogeneous batching in JDBC. Applications benefit from heterogeneous batching if updates in a transaction involve many entity types and those entities do not have DB-generated keys. To use pureQuery the JDBC driver must specify the db2jcc.jar file (pureQuery does not work with the Informix legacy JDBC driver, ifxjdbc.jar file) and when using JPA, in the persistence.xml file that is included in the application Java archive (JAR) file must specify the following:
<property name="pdqProperties" value="dynamic"/>
Important:
  • The JDBC provider configuration must include the JAR file for the pureQuery runtime environment. This JAR file is in addition to the JDBC driver JAR file. See the topic on installing IBM® Optim™ pureQuery Runtime for more information.
  • If this is an XA data source, define a new custom property on the data source where property_name = downgradeHoldCursorsUnderXa and boolean value = true.

Procedure

  1. Update the application data source JDBC provider configuration to include the pureQuery runtime JAR file.
    Either define a new JDBC provider or modify an existing provider to include the following JAR files. See topics on JDBC provider settings and installing IBM Optim pureQuery Runtime for more information.
    • pdq.jar
    • pdqmgmt.jar
    • db2jcc.jar
  2. Ensure that the persistence.xml file included in the application JAR file defines the following property:
    <property name="pdqProperties" value="dynamic"/>

    See the topic, Using pureQuery in dynamic mode, for more information.

What to do next

If you want to reconfigure the data source for JDBC, remove the pdq.jar, pdqmgmt.jar, and db2jcc.jar files from the class path and replace these files with the JDBC driver, ifxjdbc.jar file.