JDBC Features Not Implemented in InterClient

From InterBase

Go Up to InterClient/JDBC Compliance Specifications


Although all JDBC classes and methods must be implemented in order to create a JDBC-compliant driver, some features are not actually supported.

InterBase XE3U3 introduces a new connection property in the JDBC driver, returnColumnLabelAsColumnName. Pentaho requires ResultSetMetaData.getColumnName() to actually return the alias/label name (if provided by the application). In order to comply with JDBC specifications, and to keep backward compatibility for existing InterBase JDBC apps, this new connection property will be FALSE by default.

If you want to use the new property for the Pentaho-type behavior, set the following connection property:

properties.put(“returnColumnLabelAsColumnName”, “true”)
Note:
Unsupported features throw a SQLException error message.

The following table lists the JDBC classes, methods, and features not supported by this version of InterClient.

Unsupported JDBC features
java.sql Subclass Feature Description

CallableStatement

OUT parameters

InterBase does not support OUT parameters in stored procedures.

Escape processing for stored
procedures:
{? = call procedure_name[]}

InterClient does not support escape syntax with a result parameter.

Statement,
PreparedStatement,
CallableStatement

Escape processing:
Scalar functions

InterClient does not support.
Keywords fn user(), fn now(), fn curdate() are supported. All other scalar functions are not supported unless they are user-defined.

Statement,
PreparedStatement,
CallableStatement

Escape processing:
time literals:
{t 'hh:mm:ss}

time escape clause not supported.

Connection

getCatalog()

InterBase does not support catalogs.

TRANSACTION_READ_UNCOMMITTED

Not supported.
We recommend using the TRANSACTION_SERIALIZABLE transaction isolation level.

getLoginTimeout( )
setLoginTimeout( )

Login timeouts are not supported in this release.

setQueryTimeout( )
setQueryTimeout( )
cancel( )

Asynchronous cancels are not supported in this release.

Types

BIT<br/> TINYINT<br/> BIGINT

InterBase does not support these data types.

DatabaseMetaData

getCatalogs( )
getCatalogSeparator( )
getCatalogTerm( )
getMaxCatalogNameLength( )
getMaxSchemaNameLength( )
getSchemas( )
getSchemaTerm( )
isCatalogAtStart( )

InterBase does not support catalogs or schemas.

PreparedStatement

setUnicodeStream( )

InterClient does not support Unicode.

ResultSetMetaData

getCatalogName( )
getSchemaName( )

InterBase does not support catalogs or schemas.

Advance To: