Syntax of entries in the Default.bindProps file for JPA applications

Use the Default.bindProps file to specify options for determining how SQL statements are bound into DB2® packages.

To open this file in an editor in the workbench, double-click it. The file is located in the folder pureQueryFolder in your Java project.

In this file, you can specify options that apply to all of the pureQueryXML files that are in your project. You can also specify options specific to individual pureQueryXML files.

You can add comments to this file. Begin each comment with a # symbol.

As you create or edit entries, you can type CTRL+SPACE (or your own keystroke, if you changed this default one) for assistance.

For help understanding syntax diagrams, see How to read syntax diagrams.

The following diagram shows the syntax that is allowed for setting default options in this file.

Read syntax diagramSkip visual syntax diagram
>>-defaultOptions--=--+- -bindOptions-- -"--bind-options--"-+--->
                      |                  (1)                |   
                      '-| DBRM options |--------------------'   

>--+-----------------------------+--+----------------+---------->
   |                   .-FALSE-. |  |            (2) |   
   '- -differenceOnly--+-TRUE--+-'  '-| -grant |-----'   

>--+-----------------------+-----------------------------------><
   |                   (3) |   
   '-| Trace options |-----'   

Notes:
  1. For the syntax, see the description of these options.
  2. For the syntax, see the description of this option.
  3. For the syntax, see the description of these options.

The next syntax diagram shows the syntax that is allowed for setting options for individual pureQueryXML files that the file lists.

Read syntax diagramSkip visual syntax diagram
>>-+-pureQueryXML-file-----------------------+--=--------------->
   '-pureQueryXML-file--:--base-package-name-'      

>--+- -bindOptions-- -"--bind-options--"-+---------------------->
   |                  (1)                |   
   '-| DBRM options |--------------------'   

>--+-----------------------------+--+----------------+---------><
   |                   .-FALSE-. |  |            (2) |   
   '- -differenceOnly--+-TRUE--+-'  '-| -grant |-----'   

Notes:
  1. For the syntax, see the description of these options.
  2. For the syntax, see the description of this option.
-bindOptions "string-of-bind-options"
These options have the same function as DB2 precompile and bind options with the same names. The string can have one of the following formats:
  • "option_1 value_1 option_2 value_2"
  • "option_1(value_1) option_2(value_2)"

The value for each option cannot contain spaces.

For a list and descriptions of these options, see BIND command.

If you use the CONCURRENTACCESSRESOLUTION bind option in DB2 Version 9.7 for Linux, UNIX, and Windows, the option applies to all of the statements that are in packages that are bound at the CS and RR isolation levels. This option, which applies only to these two isolation levels, lets applications find the last committed value in rows that are locked by other applications.
DBRM options
Use these options to generate DBRM files, rather than create packages. These options apply only if you are using DB2 for z/OS®.

After the StaticBinder utility generates the DBRM files, you must copy the files to a data set. The default DBRM data set name is prefix.DBRMLIB.DATA, where prefix is the high-level qualifier that is specified in the TSO profile for the user. prefix is usually your user ID in TSO.

If the DBRM data set does not already exist, you must create it. The DBRM data set requires space to hold all the SQL statements, with additional space for each host variable name and some header information. The header information requires approximately two records for each DBRM, 20 bytes for each SQL record, and 6 bytes for each host variable. For an exact format of the DBRM, see the DBRM mapping macro, DSNXDBRM in library prefix.SDSNMACS.

The following syntax diagram describes the options for generating DBRM files.

Read syntax diagramSkip visual syntax diagram
                   .-FALSE-.                           
>>- -generateDBRM--+-TRUE--+-- -outputDBRMPath--path-----------><

-generateDBRM TRUE|FALSE
Specifies whether to generate DBRM files instead of create packages. If generateDBRM is TRUE, then by default the StaticBinder utility generates four DBRM files, one for each isolation level: CS, RR, RS, UR. However, you can generate only one DBRM file if you specify the -isolationLevel option.

The root name of the generated DBRM files is the root package name that you specify when you run the Configure utility.

The default is FALSE.

-outputDBRMPath path
Specifies the directory in which to save the generated DBRM files. The default value is the directory from which you run the StaticBinder utility.
defaultOptions
Specifies that the options on the line apply to the SQL statements in all of the pureQueryXML files that are listed in this file. Only one line in the file is allowed to start with this keyword.
-differenceOnlyTRUE|FALSE
Specifies not to replace DB2 packages that have collection names, package names, and consistency tokens that match these values for the corresponding statement sets within the pureQueryXML file that you run the StaticBinder utility on.

For example, suppose that you run the StaticBinder utility on a pureQueryXML file named capture.pdqxml. The utility creates the packages MYPKGA, MYPKGB, and MYPKGC. Then you edit the statement set MYPKGA in capture.pdqxml with the workbench and run the Configure utility on the file with the -cleanConfigure option at its default value of FALSE. The Configure utility assigns a new consistency token to the statement set because the set has changed. When you run the StaticBinder utility on capture.pdqxml again to bind the new version of MYPKGA, you specify -differenceOnly TRUE. The utility rebinds only MYPKGA and does not rebind the other two packages.

The default value is FALSE.
-grant "grantees(firstID,secondID,...)"
Specifies the list (in parentheses) of comma-separated grantees to whom you want to grant the EXECUTE privilege on packages that the StaticBinder utility creates. If you do not specify this option, the StaticBinder utility does not grant this privilege.
Read syntax diagramSkip visual syntax diagram
                             .-,--------------------.          
                             V                      |          
>>- -grant-- "--grantees--(----+-authorization-ID-+-+--) - "---><
                               '-PUBLIC-----------'            

grantees
The comma-separated list of authorization IDs to which you want to grant the EXECUTE privilege. Ensure that the authorization IDs that you list are valid for the DB2 database that you are using.

For DB2 Database for Linux, UNIX, and Windows: You can use the USER, GROUP, and ROLE keywords. For information about these keywords, see GRANT (Package Privileges) statement.

For DB2 for z/OS: You can use the ROLE keyword. For information about this keyword, see GRANT (package privileges).

Restriction: You cannot use the -grant option when the value of the -generateDBRM option is TRUE.

-isolationLevel CS|RR|RS|UR
Specifies that you want to generate a single DB2 package or DBRM file that is for a particular isolation level, rather than one DB2 package or DBRM file for each of the four isolation levels.

The isolation level applies to all of the SQL statements that are in the package. If you set an isolation level through the Connection.setTransactionIsolation() method of the IBM® Data Server Driver for JDBC and SQLJ, pureQuery ignores that isolation level for statements executed statically.

UR
Specifies Uncommitted Read as the isolation level.
The StaticBinder utility adds 1 to the name of the created package or DBRM file, unless you used the -forceSingleBindIsolation option when you ran the Generator utility.
The StaticBinder utility adds 1 to the name of the created package or DBRM file, unless you used the -forceSingleBindIsolation option when you ran the Configure utility.
CS
Specifies Cursor Stability as the isolation level.
The StaticBinder utility adds 2 to the name of the created package or DBRM file, unless you used the -forceSingleBindIsolation option when you ran the Generator utility.
The StaticBinder utility adds 2 to the name of the created package or DBRM file, unless you used the -forceSingleBindIsolation option when you ran the Configure utility.
RS
Specifies Read Stability as the isolation level. Read Stability ensures that the execution of SQL statements in the package is isolated from other application processes for rows that are read and changed by the application.
The StaticBinder utility adds 3 to the name of the created package or DBRM file, unless you used the -forceSingleBindIsolation option when you ran the Generator utility.
The StaticBinder utility adds 3 to the name of the created package or DBRM file, unless you used the -forceSingleBindIsolation option when you ran the Configure utility.
RR
Specifies Repeatable Read as the isolation level.
The StaticBinder utility adds 4 to the name of the created package or DBRM file, unless you used the -forceSingleBindIsolation option when you ran the Generator utility.
The StaticBinder utility adds 4 to the name of the created package or DBRM file, unless you used the -forceSingleBindIsolation option when you ran the Configure utility.
pureQueryXML-file
Specifies that the options on this line of the options file apply only to the SQL statements that are in the pureQueryXML file. These options override options that you specify as defaults.
The name of this file must end with the extension .pdqxml or .xml.

The file must be a resource in the classpath for your application.

Trace options
You can specify the file to log messages in and the level of information to log.
Read syntax diagramSkip visual syntax diagram
>>-+------------------------+--+---------------------------+---><
   '- -traceFile--file-name-'  |               .-OFF-----. |   
                               '- -traceLevel--+-ALL-----+-'   
                                               +-SEVERE--+     
                                               +-WARNING-+     
                                               +-INFO----+     
                                               +-CONFIG--+     
                                               +-FINE----+     
                                               +-FINER---+     
                                               '-FINEST--'     

-traceFile file-name
Specifies the absolute or relative path and name of the file to use for logging information about the operation.
If the file already exists, pureQuery appends new messages to the existing content of the file. As the default, the entries are written to System.err.
-traceLevel OFF|SEVERE|WARNING|INFO|CONFIG|FINE|FINER|FINEST|ALL
Specifies the type of information to log. The default level is OFF. If you do not specify a file in which to write the log entries and you set this option to any value other than OFF, the entries are written to the Console view.

Feedback