OceanBase
English日本語简体中文
Docs Home
Products
Integrations
Release Notes

Databases

OceanBase DatabaseOceanBase Cloud OceanBase Best Practices

Tools

OceanBase Cloud PlatformOceanBase Migration ServiceOceanBase Developer CenterOceanBase Migration AssessmentOceanBase Admin ToolOceanBase Loader and DumperOceanBase DeployerKubernetes operator for OceanBaseOceanBase Diagnostic Tool OceanBase Binlog Service

Connectors and Middleware

OceanBase Database Proxy OceanBase Connector/C OceanBase Connector/J OceanBase Connector/ODBC OceanBase Connector/NETOceanBase Command-Line Client

Databases

OceanBase DatabaseOceanBase Cloud OceanBase Best Practices

Connectors and Middleware

OceanBase Database Proxy OceanBase Connector/C OceanBase Connector/J OceanBase Connector/ODBC OceanBase Connector/NETOceanBase Command-Line Client

Tools

OceanBase Cloud PlatformOceanBase Migration ServiceOceanBase Developer CenterOceanBase Migration AssessmentOceanBase Admin ToolOceanBase Loader and DumperOceanBase DeployerKubernetes operator for OceanBaseOceanBase Diagnostic Tool OceanBase Binlog Service
OceanBase DatabaseOceanBase Cloud ToolsConnectors and MiddlewareLifecycle Support Policy

OceanBase Connector/J

V2.4.15
  • What is OceanBase Connector J?
    • Overview of OceanBase Connector/J
    • Compatibility requirements
  • Install Driver
    • Install and load OceanBase Connector/J
  • Instructions
    • Quick start
      • Import packages
      • Establish a database connection
      • Create a Statement object
      • Run queries and retrieve ResultSet objects
      • Process ResultSet objects
      • Close ResultSet and Statement objects
      • Manage tables and data
      • Commit changes
      • Close a database connection
      • Examples
    • Data sources and URL
      • Data source overview
      • Database URL
    • Java data streams
      • Overview of Java data streams
      • LONG and LONG RAW data types
      • Use LOBs
        • Overview of LOB data types
        • LOB data interface
        • LOB locator interface
      • CHAR, VARCHAR, and RAW data types
    • Statement caching
      • Overview of statement caching
      • Use statement caching
      • Reuse statement objects
    • Call a stored procedure
    • Handle SQL exceptions
    • Result set
      • Overview of result sets
      • Limitations
      • FetchSize
      • refreshRow
      • useCursorFetch
    • Batch processing
    • Failover and Load-Balancing
      • Failover and load balancing modes
      • LoadBalance strategies
      • Load balancing strategy configuration methods
    • Rich client
    • Logging
    • Network overheads
    • Show Trace
    • Security features
    • Troubleshooting
  • Reference
    • Features specific to the Oracle mode
      • Binary Protocol (Prepared Statements)
        • COM_STMT_PREPARE_EXECUTE
        • COM_STMT_SEND_PIECE_DATA
      • Call PL stored procedures
      • Scrollability of a result set
      • Use ARRAY and STRUCT classes
      • Distributed transactions
        • Overview
        • XA components
        • Distributed transaction examples
      • Obtain remarks
      • Data types supported in Oracle mode
      • Error messages in Oracle mode
    • Supported SQL and PL data types
    • Common APIs
      • Overview
      • java.sql.Connection
      • java.sql.CallableStatement
      • java.sql.DatabaseMetaData
      • java.sql.Driver
      • java.sql.PreparedStatement
      • java.sql.ParameterMetaData
      • java.sql.ResultSet
      • java.sql.ResultSetMetaData
      • java.sql.Statement
      • javax.sql.ConnectionPoolDataSource
      • javax.naming.Context
      • javax.sql.PooledConnection
      • com.oceanbase.jdbc.ObPrepareStatement
  • Release Notes
    • V2.4
      • OceanBase Connector/J V2.4.15
      • OceanBase Connector/J V2.4.14
      • OceanBase Connector/J V2.4.13
      • OceanBase Connector/J V2.4.12
      • OceanBase Connector/J V2.4.11
      • OceanBase Connector/J V2.4.8
      • OceanBase Connector/J V2.4.5
      • OceanBase Connector/J V2.4.4
      • OceanBase Connector/J V2.4.3
      • OceanBase Connector/J V2.4.2
      • OceanBase Connector/J V2.4.1
      • OceanBase Connector/J V2.4.0
    • V2.2
      • OceanBase Connector/J V2.2.11
      • OceanBase Connector/J V2.2.10
      • OceanBase Connector/J V2.2.7
      • OceanBase Connector/J V2.2.6
      • OceanBase Connector/J V2.2.3
      • OceanBase Connector/J V2.2.0

Download PDF

Document Feedback
  1. Documentation Center
  2. OceanBase Connector/J
  3. V2.4.15

OceanBase Connector/J V2.4.13

Last Updated:2026-09-04 08:24:26

Version information
Overview
New features
Bug fixes

Version information

  • Release date: October 21, 2024
  • Version: V2.4.13

Overview

OceanBase Connector/J V2.4.13 can implement the Statement.getGeneratedKeys() method by supporting the RETURNING ... INTO ... clause based on the ArrayBinding feature in Oracle mode. The Statement.getGeneratedKeys() method can be used to obtain the result set of batch operations. The impact of user-defined type (UDT) caching on the driver is eliminated. Moreover, a series of serious bugs are fixed to improve the stability of OceanBase Connector/J. For example, the new version fixes the issue where null is returned by the getMetaData() method when the text protocol is enabled or when both the PreparedStatement and PrepareExecute protocols are enabled.

New features

  • OceanBase Connector/J V2.4.13 enhances the ArrayBinding feature, which was introduced in OceanBase Connector/J V2.2.11. The new version implements the Statement.getGeneratedKeys() method by supporting the RETURNING ... INTO ... clause based on the ArrayBinding feature in Oracle mode. The Statement.getGeneratedKeys() method can be used to obtain the result set of batch operations. To do so, you must configure compatibleOjdbcVersion=8&useArrayBinding=true&useOraclePrepareExecute=true.

Bug fixes

This version fixes the following bugs:

  • Fixed the issue where null is returned if the getMetaData() method is called after a prepared statement is executed with useServerPrepStmts set to false.
  • Fixed the issue where the "not support batch operation for DML_Returning_Into feature" error is returned when ps.addBatch() and RETURNING INTO are used.
  • Fixed the issue where statements are repeatedly executed if the value of maxBatchTotalParamsNum is smaller than the actual number of parameters and useServerPrepStmts=true is configured when the executeBatch() method is called.
  • Fixed the issue where blocking occurs when an invalid column index is used to retrieve the return results.
  • Fixed the issue where the NumberFormatException error may be returned if a UDT is changed from the collection type to the object type.
  • Fixed the issue where an error occurs when stored procedures return data of a complex type (an array of UDTs) in the JDBC driver, but the UDT definition changes.
  • Fixed the issue where an ArrayIndexOutOfBoundsException is thrown during execution if the definitions of UDTs are modified and arrays are nested.
  • Fixed the issue where the return type of the getArray() method is TYPE_OBJECT after the data type is changed from a UDT to a UDT array.
  • Fixed the issue where the getColumns() method of the DatabaseMetadata interface cannot obtain comments when the table name contains a backtick (`) in MySQL mode.
  • Fixed the issue where an error is returned if a comment of a PL statement contains double slashes (//) and is followed by a field {xxx}.
  • Fixed the issue where the value returned by the getParameterCount() method called in a procedure or function is inconsistent with that in native Oracle JDBC drivers.
  • Fixed the issue where no error is reported for output parameters when a stored procedure is registered.
  • Fixed the issue where the result set returned by the getFunctionColumns() method is incorrect in Oracle mode.
  • Fixed the issue related to the precision of exported time data.
  • Fixed the issue where the number of open cursors in a PL statement exceeds the limit when the PreparedStatement protocol is enabled in Oracle mode.
  • Fixed the issue where ODC handles the obtained invalid dates differently from MySQL Connector/J.
  • Fixed the issue where the socket is not released in a timely manner after a SocketTimeOut exception is triggered.

Previous topic

OceanBase Connector/J V2.4.14
Last

Next topic

OceanBase Connector/J V2.4.12
Next
on this page
Version information
Overview
New features
Bug fixes