Easysoft JDBC-ODBC Bridge JDBC conformance

The Easysoft JDBC-ODBC Bridge supports the following JDBC 2.1 core class methods:

The following JDBC 2.1 core class methods aren't currently supported by the JDBC-ODBC Bridge (most of these methods relate to SQL 3 data types, which are not supported by most current ODBC drivers):

The JDBC-ODBC Bridge supports all SQL statements, as these are not processed, but passed from the client to an ODBC driver on the server machine. ODBC has the following support for JDBC data types:

Core JDBC 2 methods

Supported methods in Driver

Return type Method
boolean acceptsURL(String url)
Connection connect(String url, Properties info)
int getMajorVersion()
int getMinorVersion()
DriverPropertyInfo[] getPropertyInfo(String url, java.util.Properties info)
boolean jdbcCompliant()

Supported methods in Connection

Return type Method
void clearWarnings()
void close()
void commit()
Statement createStatement()
Statement createStatement(int resultSetType, int resultSetConcurrency)
boolean getAutoCommit()
String getCatalog()
DatabaseMetaData getMetaData()
int getTransactionIsolation()
SQLWarnings getWarnings()
boolean isClosed()
boolean isReadOnly()
String nativeSQL(String sql
CallableStatement prepareCall(String sql
CallableStatement prepareCall(String sql, int resultSetType, int resultSetConcurrency)
PreparedStatement prepareStatement(String sql
PreparedStatement prepareStatement(String sql, int resultSetType, int resultSetConcurrency)
void rollback()
void setAutoCommit(boolean autoCommit)
void setCatalog(String catalog)
void setReadOnly(boolean readOnly)
void setTransactionIsolation(int level)

Supported methods in Statement

Return type Method
void addBatch(String sql
void cancel()
void clearBatch()
void clearWarnings()
void close()
boolean execute(String sql
int[] executeBatch()
ResultSet executeQuery(String sql
int executeUpdate(String sql
Connection getConnection()
int getFetchDirection()
int getFetchSize()
int getMaxFieldSize()
int getMaxRows()
boolean getMoreResults()
int getQueryTimeout()
ResultSet getResultSet()
int getResultSetConcurrency()
int getResultSetType()
int getUpdateCount()
SQLWarning getWarnings()
void setCursorName(String name)
void setEscapeProcessing(boolean enable)
void setFetchDirection(int direction)
void setFetchSize(int rows)
void setMaxFieldSize(int max)
void setMaxRows(int max)
void setQueryTimeout()

Supported methods in ResultSet

Return type Method
boolean absolute(int row)
void afterLast()
void beforeFirst()
void cancelRowUpdates()
void clearWarnings()
void close()
void deleteRow()
int findColumn(String columnName)
boolean first()
InputStream getAsciiStream()
InputStream getAsciiStream(String columnName)
BigDecimal getBigDecimal(int columnIndex)
BigDecimal getBigDecimal(int columnIndex, int scale)
BigDecimal getBigDecimal(String columnName)
BigDecimal getBigDecimal(String columnName, int scale)
InputStream getBinaryStream(int columnIndex)
InputStream getBinaryStream(String columnName)
boolean getBoolean(int columnIndex)
boolean getBoolean(String columnName)
byte getByte(int columnIndex)
byte getByte(String columnName)
byte[] getBytes(int columnIndex)
byte[] getBytes(String columnName)
java.io.Reader getCharacterStream(int columnIndex)
java.io.Reader getCharacterStream(String columnName)
int getConcurrency()
String getCursorName()
java.sql.Date getDate(int columnIndex)
java.sql.Date getDate(String columnName)
double getDouble(int columnIndex)
double getDouble(String columnName)
int getFetchDirection()
int getFetchSize()
float getFloat(int columnIndex)
float getFloat(String columnName)
int getInt(int columnIndex)
int getInt(String columnName)
long getLong(int columnIndex)
long getLong(String columnName)
ResultSetMetaData getMetaData()
Object getObject(int columnIndex)
Object getObject(int column, int type)
Object getObject(String columnName)
int getRow()
short getShort(int columnIndex)
short getShort(String columnName)
Statement getStatement()
String getString(int columnIndex)
String getString(String columnName)
java.sql.Time getTime(int columnIndex)
java.sql.Time getTime(String columnName)
java.sql.Timestamp getTimestamp(int columnIndex)
java.sql.Timestamp getTimestamp(String columnName)
int getType()
java.io.InputStream getUnicodeStream(int columnIndex)
java.io.InputStream getUnicodeStream(String columnName)
SQLWarning getWarnings()
void insertRow()
boolean isAfterLast()
boolean isBeforeFirst()
boolean isFirst()
boolean isLast()
boolean last()
void moveToCurrentRow()
void moveToInsertRow()
boolean next()
boolean previous()
void refreshRow()
boolean rowDeleted()
boolean rowInserted()
boolean rowUpdated()
void setFetchDirection(int direction)
void setFetchSize(int rows)
void updateAsciiStream(int columnIndex, InputStream x, int length)
void updateAsciiStream(String columnName, InputStream x, int length)
void updateBigDecimal(int columnIndex, BigDecimal x)
void updateBigDecimal(String columnName, BigDecimal x)
void updateBinaryStream(int columnIndex, InputStream x, int length)
void updateBinaryStream()
void updateBoolean(int columnIndex, boolean x)
void updateBoolean(String columnName, boolean x)
void updateByte(int columnIndex, byte x)
void updateByte(String columnName, byte x)
void updateBytes(int columnIndex, byte x[])
void updateBytes(String columnName, byte x[])
void updateCharacterStream(int columnIndex, java.io.Reader x, int length)
void updateCharacterStream(String columnName, java.io.Reader reader, int length)
void updateDate(int columnIndex, java.sql.Date x)
void updateDate(String columnName, java.sql.Date x)
void updateDouble(int columnIndex, double x)
void updateDouble(String columnName, double x)
void updateFloat(int columnIndex, float x)
void updateFloat(String columnName, float x)
void updateInt(int columnIndex, int x)
void updateInt(String columnName, int x)
void updateLong(int columnIndex, long x)
void updateLong(String columnName, long x)
void updateNull(int columnIndex)
void updateNull(String columnName)
void updateObject(int columnIndex, Object x)
void updateObject(int columnIndex, Object x, int scale)
void updateObject(String columnName, Object x)
void updateObject(String columnName, Object x, int scale)
void updateRow()
void updateShort(int columnIndex, short x)
void updateShort(String columnName, short x)
void updateString(int columnIndex, String x)
void updateString(String columnName, String x)
void updateTime(int columnIndex, java.sql.Time x)
void updateTime(String columnName, java.sql.Time x)
void updateTimestamp(int columnIndex, java.sql.Timestamp x)
void updateTimestamp(String columnName, java.sql.Timestamp x)
boolean wasNull()

Supported methods in ResultSetMetaData

Return type Method
String getCatalogName(int column)
String getColumnClassName(int column)
int getColumnCount()
int getColumnDisplaySize(int column)
String getColumnLabel(int column)
String getColumnName(int column)
int getColumnType(int column)
String getColumnTypeName(int column)
int getNumPrecRadix(int column)
int getPrecision(int column)
int getScale(int column)
String getSchemaName(int column)
String getTableName(int column)
boolean isAutoIncrement(int column)
boolean isCaseSensitive(int column)
boolean isCurrency(int column)
boolean isDefinitelyWritable(int column)
int isNullable(int column)
boolean isReadOnly(int column)
boolean isSearchable(int column)
boolean isSigned(int column)
boolean isWritable(int column)

Supported methods in DatabaseMetaData

Return type Method
boolean allProceduresAreCallable()
boolean allTablesAreSelectable()
boolean dataDefinitionCausesTransactionCommit()
boolean dataDefinitionIgnoredInTransactions()
boolean deletesAreDetected(int type)
boolean doesMaxRowSizeIncludeBlobs()
ResultSet getBestRowIdentifier(...)
ResultSet getCatalogs()
String getCatalogSeparator()
String getCatalogTerm()
ResultSet getColumnPrivileges(String catalog, String schema, String table, String columnNamePattern)
ResultSet getColumns(String catalog, String schemaPattern, String tableNamePattern, String columnNamePattern)
Connection getConnection()
ResultSet getCrossReference(String primaryCatalog, String primarySchema, String primaryTable, String foreignCatalog, String foreignSchema, String foreignTable)
String getDatabaseProductName()
String getDatabaseProductVersion()
int getDefaultTransactionIsolation()
int getDriverMajorVersion()
int getDriverMinorVersion()
String getDriverName()
String getDriverVersion()
ResultSet getExportedKeys(String catalog, String schema, String table)
String getExtraNameCharacters()
String getIdentifierQuoteString()
ResultSet getImportedKeys(String catalog, String schema, String table)
ResultSet getIndexInfo(String catalog, String schema, String table, boolean unique, boolean approximate)
int getMaxBinaryLiteralLength()
int getMaxCatalogNameLength()
int getMaxCharLiteralLength()
int getMaxColumnNameLength()
int getMaxColumnsInGroupBy
int getMaxColumnsInIndex()
int getMaxColumnsInOrderBy()
int getMaxColumnsInSelect()
int getMaxColumnsInTable()
int getMaxConnections()
int getMaxCursorNameLength()
int getMaxIndexLength()
int getMaxProcedureNameLength()
int getMaxRowSize()
int getMaxSchemaNameLength()
int getMaxStatementLength()
int getMaxStatements()
int getMaxTableNameLength()
int getMaxTablesInSelect()
int getMaxUserNameLength()
String getNumericFunctions()
ResultSet getPrimaryKeys(String catalog, String schema, String table)
ResultSet getProcedureColumns(String catalog, String schemaPattern, String procedureNamePattern, String columnNamePattern)
ResultSet getProcedures(String catalog, String schemaPattern, String procedureNamePattern)
String getProcedureTerm()
ResultSet getSchemas()
String getSchemaTerm()
String getSearchStringEscape()
String getSQLKeywords()
String getStringFunctions
String getSystemFunctions()
ResultSet getTablePrivileges(String catalog, String schemaPattern,String tableNamePattern)
ResultSet getTables(String catalog, String schemaPattern, String tableNamePattern, String types[])
ResultSet getTableTypes()
String getTimeDateFunctions()
ResultSet getTypeInfo()
String getURL()
String getUserName()
ResultSet getVersionColumnsString catalog, String schema, String table)
boolean insertsAreDetected(int type)
boolean isCatalogAtStart()
boolean isReadOnly()
boolean nullPlusNonNullIsNull()
boolean nullsAreSortedAtEnd()
boolean nullsAreSortedAtStart()
boolean nullsAreSortedHigh()
boolean nullsAreSortedLow()
boolean othersDeletesAreVisible(int type)
boolean othersInsertsAreVisible(int type)
boolean othersUpdatesAreVisible(int type)
boolean ownDeletesAreVisible(int type)
boolean ownInsertsAreVisible(int type)
boolean ownUpdatesAreVisible(int type)
boolean storesLowerCaseIdentifiers()
boolean storesLowerCaseQuotedIdentifier()
boolean storesMixedCaseIdentifiers()
boolean storesMixedCaseQuotedIdentifiers()
boolean storesUpperCaseIdentifiers()
boolean storesUpperCaseQuotedIdentifiers()
boolean supportsAlterTableWithAddColumn()
boolean supportsAlterTableWithDropColumn()
boolean supportsANSI92EntryLevelSQL()
boolean supportsANSI92FullSQL()
boolean supportsANSI92IntermediateSQL()
boolean supportsBatchUpdates()
boolean supportsCatalogsInDataManipulation()
boolean supportsCatalogsInIndexDefinitions()
boolean supportsCatalogsInPrivilegeDefinitions()
boolean supportsCatalogsInProcedureCalls()
boolean supportsCatalogsInTableDefinitions()
boolean supportsColumnAliasing()
boolean supportsConvert()
boolean supportsConvert(int fromType, int toType)
boolean supportsCoreSQLGrammar()
boolean supportsCorrelatedSubqueries()
boolean supportsDataDefinitionAndDataManipulationTransactions()
boolean supportsDataManipulationTransactionsOnly()
boolean supportsDifferentTableCorrelationNames()
boolean supportsExpressionsInOrderBy
boolean supportsExtendedSQLGrammar()
boolean supportsFullOuterJoins()
boolean supportsGroupBy()
boolean supportsGroupByBeyondSelect()
boolean supportsGroupByUnrelated()
boolean supportsIntegrityEnhancementFacility()
boolean supportsLikeEscapeClause()
boolean supportsLimitedOuterJoins()
boolean supportsMinimumSQLGrammar()
boolean supportsMixedCaseIdentifiers()
boolean supportsMixedCaseQuotedIdentifiers()
boolean supportsMultipleResultSets()
boolean supportsMultipleTransactions()
boolean supportsNonNullableColumns()
boolean supportsOpenCursorsAcrossCommit()
boolean supportsOpenCursorsAcrossRollback()
boolean supportsOpenStatementsAcrossCommit()
boolean supportsOpenStatementsAcrossRollback()
boolean supportsOrderByUnrelated()
boolean supportsOuterJoins()
boolean supportsPositionedDelete()
boolean supportsPositionedUpdate()
boolean supportsResultSetConcurrency(int type, int concurrency)
boolean supportsResultSetType(int type)
boolean supportsSchemasInDataManipulation()
boolean supportsSchemasInIndexDefinitions()
boolean supportsSchemasInPrivilegeDefinitions()
boolean supportsSchemasInProcedureCalls()
boolean supportsSchemasInTableDefinitions()
boolean supportsSelectForUpdate()
boolean supportsStoredProcedures()
boolean supportsSubqueriesInComparisons()
boolean supportsSubqueriesInExists()
boolean supportsSubqueriesInIns()
boolean supportsSubqueriesInQuantifieds()
boolean supportsTableCorrelationNames()
boolean supportsTransactionIsolationLevel(int level)
boolean supportsTransactions()
boolean supportsUnion()
boolean supportsUnionAll()
boolean updatesAreDetected(int type)
boolean usesLocalFilePerTable()
boolean usesLocalFiles()

Supported methods in PreparedStatement

Return type Method
void addBatch()
void setCharacterStream(int parameterIndex, java.io.Reader reader, int length)
ResultSetMetaData getMetaData()
void clearParameters()
boolean execute()
ResultSet executeQuery()
int executeUpdate()
void setAsciiStream(int parameterIndex, java.io.InputStream x, int length)
void setBigDecimal(int parameterIndex, BigDecimal x)
void setBinaryStream(int parameterIndex, java.io.InputStream x, int length)
void setBoolean(int parameterIndex, boolean x)
void setByte(int parameterIndex, byte x)
void setBytes(int parameterIndex, byte x[])
void setDate(int parameterIndex, java.sql.Date x)
void setDouble(int parameterIndex, double x)
void setFloat(int parameterIndex, float x)
void setInt(int parameterIndex, int x)
void setLong(int parameterIndex, long x)
void setNull(int parameterIndex, int sqlType)
void setObject(int i, Object x)
void setObject(int parameterIndex, Object x, int targetSqlType)
void setObject(int parameterIndex, Object x, int targetSqlType, int scale)
void setShort(int parameterIndex, short x)
void setString(int parameterIndex, String x)
void setTime(int parameterIndex, java.sql.Time x)
void setTimestamp(int parameterIndex, java.sql.Timestamp x)
void setUnicodeStream(int parameterIndex, java.io.InputStream x, int length)
void clearBatch()

Supported methods in CallableStatement

Return type Method
BigDecimal getBigDecimal(int parameterIndex)
Object getObject (int i, java.util.Map map)
BigDecimal getBigDecimal(int parameterIndex)
boolean getBoolean(int parameterIndex)
byte getByte(int parameterIndex)
byte[] getBytes(int parameterIndex)
java.sql.Date getDate(int parameterIndex)
double getDouble(int parameterIndex)
float getFloat(int parameterIndex)
int getInt(int parameterIndex)
long getLong(int parameterIndex)
Object getObject(int parameterIndex)
short getShort(int parameterIndex)
getString(int parameterIndex)
java.sql.Time getTime(int parameterIndex)
java.sql.Timestamp getTimestamp(int parameterIndex)
void registerOutParameter(int parameterIndex, int sqlType)
void registerOutParameter(int parameterIndex, int sqlType, int scale)
boolean wasNull()

Unsupported JDBC methods

Methods not currently supported in Driver

Methods not currently supported in Connection

Return type Method
java.util.Map getTypeMap()
void setTypeMap(java.util.Map map)

Methods not currently supported in Statement

Methods not currently supported in ResultSet

Return type Method
Object getObject(int i, java.util.Map map)
Ref getRef(int i)
Blob getBlob(int i)
Clob getClob(int i)
Array getArray(int i)
Object getObject(String colName, java.util.Map map)
Ref getRef(String colName)
Blob getBlob(String colName)
Clob getClob(String colName)
Array getArray(String colName)
java.sql.Date getDate(int columnIndex, Calendar cal)
java.sql.Date getDate(int columnIndex, Calendar cal)
java.sql.Time getTime(int columnIndex, Calendar cal)
java.sql.Time getTime(String columnName, Calendar cal)
java.sql.Timestamp getTimestamp(int columnIndex, Calendar cal)
java.sql.Timestamp getTimestamp(String columnName, Calendar cal)

Methods not currently supported in ResultSetMetaData

Methods not currently supported in DatabaseMetaData

Return type Method
ResultSet getUDTs(String catalog, String schemaPattern, String typeNamePattern, int[] types)

Methods not currently supported in PreparedStatement

Return type Method
void setRef (int i, Ref x)
void setBlob (int i, Blob x)
void setClob (int i, Clob x)
void setArray (int i, Array x)
void setDate(int parameterIndex, java.sql.Date x, Calendar cal)
void setTime(int parameterIndex, java.sql.Time x, Calendar cal)
void setTimestamp(int parameterIndex, java.sql.Timestamp x, Calendar cal)
void setNull (int parameterIndex, int sqlType, String typeName)

Methods not currently supported in CallableStatement

Return type Method
Ref getRef (int i)
Blob getBlob (int i)
Clob getClob (int i)
Array getArray (int i)
java.sql.Date getDate(int parameterIndex, Calendar cal)
java.sql.Time getTime(int parameterIndex, Calendar cal)
java.sql.Timestamp getTimestamp(int parameterIndex, Calendar cal)
void registerOutParameter (int parameterIndex, int sqlType, String typeName)

SQL

Supported data types

Unsupported data types