The IBM® Data Server Driver for JDBC and SQLJ contains a number of major enhancements for Version 10.1.
The following IBM Data Server Driver for JDBC and SQLJ enhancements are available in version 3.63 or version 4.13, or later.
The IBM Data Server Driver for JDBC and SQLJ db2sqljprint profile printer utility is enhanced to display metadata for temporal tables. For example:
...
Parameter 3:
name:START_TS
label:null
nullable:false
sqlType:392
precision:0
scale:0
ccsid:37
columnLength:32
tableName:POLICY_DETAIL
temporal column: ROW BEGIN
Parameter 4:
name:END_TS
label:null
nullable:false
sqlType:392
precision:0
scale:0
ccsid:37
columnLength:32
tableName:POLICY_DETAIL
temporal column: ROW END
Parameter 5:
name:TRANS_ID
label:null
nullable:true
sqlType:393
precision:0
scale:0
ccsid:37
columnLength:32
tableName:POLICY_DETAIL
temporal column: TRANSACTION START ID
...
The server time that is returned by DB2SystemMonitor.getServerTimeMicros now includes commit and rollback time.
Configuration property | Default before versions 3.63 and 4.13 | Default for versions 3.63 and 4.13 or later |
---|---|---|
db2.jcc.maxRefreshInterval | 30 seconds | 10 seconds |
db2.jcc.maxTransportObjects | -1 (unlimited) | 1000 |
db2.jcc.maxTransportObjectWaitTime | -1 (unlimited) | 1 second |
Connection and DataSource property | Default value before versions 3.63 and 4.13 | Default value for versions 3.63 and 4.13 or later |
---|---|---|
maxRetriesForClientReroute | If maxRetriesForClientReroute and retryIntervalForClientReroute are not set, the connection is retried for 10 minutes, with a wait time between retries that increases as the length of time from the first retry increases. | If maxRetriesForClientReroute and retryIntervalForClientReroute are not set, enableSysplexWLB property is set to true, and the data server is DB2 for z/OS®, the default is 5. Otherwise, the default is the same as for previous driver versions. |
retryIntervalForClientReroute | If maxRetriesForClientReroute and retryIntervalForClientReroute are not set, the connection is retried for 10 minutes, with a wait time between retries that increases as the length of time from the first retry increases. | If maxRetriesForClientReroute and retryIntervalForClientReroute are not set, enableSysplexWLB property is set to true, and the data server is DB2 for z/OS, the default is 0 seconds. Otherwise, the default is the same as for previous driver versions. |
In DB2 for Linux, UNIX, and Windows V10.1 Fix Pack 1, the following enhancements are available in version 3.64 or version 4.14 of the driver. Version 3.64 contains JDBC 3.0 or earlier functions. Version 4.14 contains JDBC 4.0 or later functions, and JDBC 3.0 or earlier functions.
For connections to DB2 for z/OS, the following enhancements are added:
In DB2 for Linux, UNIX, and Windows V10.1 Fix Pack 2, the following enhancements are available in version 3.65 or version 4.15 of the driver. Version 3.65 contains JDBC 3.0 or earlier functions. Version 4.15 contains JDBC 4.0 or later functions, and JDBC 3.0 or earlier functions.
The following Connection and DataSource properties are added:
The keepAliveTimeOut property is used to adjust the TCP/IP KeepAlive parameters on the client, to prevent potential failover issues caused by timeouts within the TCP/IP layer.
The following global configuration properties are added:
Passwords can now include all characters in the ASCII range X'20' (decimal 32) through X'7E' (decimal 126), except for the following characters:
You can now use the java.sql.ResultSet.getString method to retrieve the values NaN, Infinity, or -Infinity from a DECFLOAT column.
You can use the DB2DataSource.setSpecialRegisters method to set the value of any DB2 special register. The input to this method is a java.util.Properties object that contains the names and values of the special registers that are to be set.
You can use the DB2ResultSet.getDBRowAsBytes method to retrieve all the data in a table row as byte data, and to determine the offset of each column value in the row data. You can then use the DB2ResultSet.getDBRowDescriptor method to determine the characteristics of each column value.
An SQLException with SQL error -30108 or -4498 is thrown when client reroute without seamless failover occurs. The error messages for those SQL errors have been enhanced to provide additional information about the reason for the failover and the state of special registers after failover.
For connections to Informix servers, you can now include comments that are enclosed in curly brackets ({}) in SQL statement strings. Some restrictions apply to using curly brackets in the escape syntax for stored procedure calls, because that syntax includes curly brackets.