OceanBase logo

OceanBase

A unified distributed database ready for your transactional, analytical, and AI workloads.

Product Overview
DEPLOY YOUR WAY

OceanBase Cloud

The best way to deploy and scale OceanBase

OceanBase Enterprise

Run and manage OceanBase on your infra

TRY OPEN SOURCE

OceanBase Community Edition

The free, open-source distributed database

OceanBase seekdb

Open source AI native search database

Customer Stories

Real-world success stories from enterprises across diverse industries.

View All
BY USE CASES

Mission-Critical Transactions

Global & Multicloud Application

Elastic Scaling for Peak Traffic

Real-time Analytics

Active Geo-redundancy

Database Consolidation

Resources

Comprehensive knowledge hub for OceanBase.

Blog

Live Demos

Training & Certification

Documentation

Official technical guides, tutorials, API references, and manuals for all OceanBase products.

View All
PRODUCTS

OceanBase Cloud

OceanBase Database

Tools

Connectors and Middleware

QUICK START

OceanBase Cloud

OceanBase Database

BEST PRACTICES

Practical guides for utilizing OceanBase more effectively and conveniently

Company

Learn more about OceanBase – our company, partnerships, and trust and security initiatives.

About OceanBase

Partner

Trust Center

Contact Us

International - English
中国站 - 简体中文
日本 - 日本語
Sign In
Start on Cloud

OceanBase

A unified distributed database ready for your transactional, analytical, and AI workloads.

Product Overview
DEPLOY YOUR WAY

OceanBase Cloud

The best way to deploy and scale OceanBase

OceanBase Enterprise

Run and manage OceanBase on your infra

TRY OPEN SOURCE

OceanBase Community Edition

The free, open-source distributed database

OceanBase seekdb

Open source AI native search database

Customer Stories

Real-world success stories from enterprises across diverse industries.

View All
BY USE CASES

Mission-Critical Transactions

Global & Multicloud Application

Elastic Scaling for Peak Traffic

Real-time Analytics

Active Geo-redundancy

Database Consolidation

Comprehensive knowledge hub for OceanBase.

Blog

Live Demos

Training & Certification

Documentation

Official technical guides, tutorials, API references, and manuals for all OceanBase products.

View All
PRODUCTS
OceanBase CloudOceanBase Database
ToolsConnectors and Middleware
QUICK START
OceanBase CloudOceanBase Database
BEST PRACTICES

Practical guides for utilizing OceanBase more effectively and conveniently

Learn more about OceanBase – our company, partnerships, and trust and security initiatives.

About OceanBase

Partner

Trust Center

Contact Us

Start on Cloud
编组
All Products
    • Databases
    • iconOceanBase Database
    • iconOceanBase Cloud
    • iconOceanBase Tugraph
    • iconInteractive Tutorials
    • iconOceanBase Best Practices
    • Tools
    • iconOceanBase Cloud Platform
    • iconOceanBase Migration Service
    • iconOceanBase Developer Center
    • iconOceanBase Migration Assessment
    • iconOceanBase Admin Tool
    • iconOceanBase Loader and Dumper
    • iconOceanBase Deployer
    • iconKubernetes operator for OceanBase
    • iconOceanBase Diagnostic Tool
    • iconOceanBase Binlog Service
    • Connectors and Middleware
    • iconOceanBase Database Proxy
    • iconEmbedded SQL in C for OceanBase
    • iconOceanBase Call Interface
    • iconOceanBase Connector/C
    • iconOceanBase Connector/J
    • iconOceanBase Connector/ODBC
    • iconOceanBase Connector/NET
icon

OceanBase Connector/J

V2.2.3

  • What is OceanBase Connector J?
    • JDBC overview
    • Compatibility requirements
  • Instructions
    • Install OceanBase Client
    • Basic operations
      • Import packages
      • Create a database connection
      • Create a Statement object
      • Run queries and retrieve ResultSet objects
      • Process a ResultSet object
      • Close ResultSet and Statement objects
      • Modify a database
      • Commit changes
      • Close a database connection
    • Handle SQL exceptions
    • Java data streams
      • Overview of Java data streams
      • LONG and LONG RAW data types
      • LOB data types
    • Use LOBs
      • Overview of LOB data types
      • LOB data API
      • LOB locator API
      • CHAR, VARCHAR, and RAW data types
    • Use CallableStatements to call stored procedures
    • Data sources and URL
      • Data source overview
      • Data source characteristics and properties
      • Create and connect to a data source instance
      • Database URL
    • Result set
      • Limits and degradation rules
      • Fetch size
      • Refetch rows
      • Cursor result sets
    • Statement caching
      • Statement caching overview
      • Use statement cache
      • Reuse statement objects
    • Failover and load balancing modes
    • Batch processing
    • JDBC security features
    • SQL NetworkCostInfo
    • Troubleshooting
    • Common APIs
      • 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
    • Reference
      • Supported SQL and PL data types
  • Features specific to the Oracle mode
    • Call PL stored procedures
    • Result set performance
    • Use ARRAY and STRUCT classes
    • Distributed transactions
      • Overview of distributed transactions
      • XA components
      • Distributed transaction examples
    • Error messages in Oracle mode
    • Data types supported in Oracle mode

Download PDF

JDBC overview Compatibility requirements Install OceanBase Client Import packages Create a database connection Create a Statement object Run queries and retrieve ResultSet objects Process a ResultSet object Close ResultSet and Statement objects Modify a database Commit changes Close a database connection Handle SQL exceptions Overview of Java data streams LONG and LONG RAW data types LOB data types Overview of LOB data types LOB data API LOB locator API CHAR, VARCHAR, and RAW data types Use CallableStatements to call stored procedures Data source overview Data source characteristics and properties Create and connect to a data source instance Database URL Limits and degradation rules Fetch size Refetch rows Cursor result sets Statement caching overview Use statement cache Reuse statement objects Failover and load balancing modesBatch processing JDBC security features SQL NetworkCostInfo Troubleshooting 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 Supported SQL and PL data types Call PL stored procedures Result set performance Use ARRAY and STRUCT classes Overview of distributed transactions XA components Distributed transaction examples Error messages in Oracle mode Data types supported in Oracle mode
OceanBase logo

The Unified Distributed Database for the AI Era.

Follow Us
Products
OceanBase CloudOceanBase EnterpriseOceanBase Community EditionOceanBase seekdb
Resources
DocsBlogLive DemosTraining & Certification
Company
About OceanBaseTrust CenterLegalPartnerContact Us
Follow Us

© OceanBase 2026. All rights reserved

Cloud Service AgreementPrivacy PolicySecurity
Contact Us
Document Feedback
  1. Documentation Center
  2. OceanBase Connector/J
  3. V2.2.3
iconOceanBase Connector/J
V 2.2.3
  • V 2.4.17
  • V 2.4.16
  • V 2.4.15
  • V 2.4.14
  • V 2.4.5
  • V 2.4.4
  • V 2.4.3
  • V 2.4.2
  • V 2.4.1
  • V 2.4.0
  • V 2.2.11
  • V 2.2.10
  • V 2.2.7
  • V 2.2.6
  • V 2.2.3
  • V 2.2.0

Error messages in Oracle mode

Last Updated:2026-04-09 07:36:39  Updated
share
What is on this page
Error message structure
General JDBC error messages

folded

share

This topic describes the error message structure and general JDBC error messages.

Error message structure

In the regular JDBC error message structure, runtime information can be added to the end of the message, starting with a colon, as shown below:

<error_message>:<extra_info>

The following example shows a closed statement error message, indicating that an exception is thrown during a call of the next method (ResultSet object).

Closed Statement:next

In some cases, you can find the same information in the stack trace.

General JDBC error messages

The following table describes the JDBC error messages by ORA ID.

ORA Number Description
ORA-17001 An internal error occurred.
ORA-17002 An I/O exception is thrown.
ORA-17003 The specified column index is invalid.
ORA-17004 The specified column type is invalid.
ORA-17005 The column type is unsupported.
ORA-17006 The specified column name is invalid.
ORA-17007 The specified dynamic column is invalid.
ORA-17008 The connection is closed.
ORA-17009 The statement is closed.
ORA-17010 The ResultSet is closed.
ORA-17011 The ResultSet is exhausted.
ORA-17012 A Parameter Type Conflict exception is thrown.
ORA-17014 ResultSet.next is not called.
ORA-17015 The statement is canceled.
ORA-17016 The statement timed out.
ORA-17017 The cursor is already initialized.
ORA-17018 The specified cursor is invalid.
ORA-17019 Can only describe a query.
ORA-17020 The row prefetch is invalid.
ORA-17021 The definition is missing.
ORA-17022 The definition is missing at index.
ORA-17023 The feature is unsupported.
ORA-17024 No data is read.
ORA-17025 An error occurred in define.isNull().
ORA-17026 A numeric overflow exception is thrown.
ORA-17027 The stream is already closed.
ORA-17028 Cannot redefine until the current ResultSet is closed.
ORA-17029 setReadOnly: Read-only connections are not supported.
ORA-17030 Only READ_COMMITTED and SERIALIZABLE are the valid transaction levels.
ORA-17031 setAutoClose: Auto close mode can only be set to on.
ORA-17032 Cannot set row prefetch to zero.
ORA-17033 Malformed SQL92 string found.
ORA-17034 Unsupported SQL92 token found.
ORA-17035 The specified character set is invalid.
ORA-17036 An exception in OracleNumber is thrown.
ORA-17037 The conversion between UTF8 and UCS2 is not supported.
ORA-17038 The byte array is not long enough.
ORA-17039 The CHAR array is not long enough.
ORA-17040 The subprotocol is required in connection URL.
ORA-17041 Missing IN or OUT parameter at index.
ORA-17042 The specified batch value is invalid.
ORA-17043 The specified maximum stream size is invalid.
ORA-17044 Internal error: The data array is not allocated.
ORA-17045 Internal error: An attempt was made to access bind values beyond the batch value.
ORA-17046 Internal error: The specified index for data access is invalid.
ORA-17047 An error occurred while parsing the descriptor.
ORA-17048 The type is undefined.
ORA-17049 The Java and SQL object types are inconsistent.
ORA-17050 No such element exist in vector.
ORA-17051 This API can be used only for UDT types.
ORA-17052 The specified ref is invalid.
ORA-17053 The specified size is invalid.
ORA-17054 The specified LOB locator is invalid.
ORA-17055 An invalid character is encountered.
ORA-17056 Unsupported character set (orai18n.jar added to class path).
ORA-17057 Closed LOB.
ORA-17058 Internal error: The specified NLS conversion ratio is invalid.
ORA-17059 Unable to convert to internal representation.
ORA-17060 Unable to construct the descriptor.
ORA-17061 The descriptor is missing.
ORA-17062 The specified Ref cursor is invalid.
ORA-17063 Not in transaction.
ORA-17064 The syntax is invalid or the database name is not specified.
ORA-17065 The conversion class must be specified.
ORA-17066 Access layer-specific implementation is required.
ORA-17067 The specified URL is invalid.
ORA-17068 An invalid parameter is found in the call.
ORA-17069 An explicit XA call must be used.
ORA-17070 The data size exceeds the maximum size for this type.
ORA-17071 The maximum VARRAY limit is exceeded.
ORA-17072 The value inserted is too large for the column.
ORA-17074 The specified name pattern is invalid.
ORA-17075 The operation is invalid for a forward-only ResultSet.
ORA-17076 The operation is invalid for a read-only ResultSet.
ORA-17077 Unable to set the REF value.
ORA-17078 Unable to do the operation because connections are already opened.
ORA-17079 User credentials do not match the existing ones.
ORA-17080 The specified batch command is invalid.
ORA-17081 An error occurred while batching.
ORA-17082 No current row found.
ORA-17083 Not on inserted row.
ORA-17084 Called on inserted row.
ORA-17085 A value conflict exception is thrown.
ORA-17086 A column value specified on the inserted row is invalid.
ORA-17087 Ignoble performance hint: setFetchDirection().
ORA-17088 The syntax for the requested resultset type and concurrency level is unsupported.
ORA-17089 An internal error occurred.
ORA-17090 The operation not allowed.
ORA-17091 Unable to create ResultSet at requested type and/or concurrency level.
ORA-17092 Unable to create or execute JDBC statements at end of call processing.
ORA-17094 The object type version does not match.
ORA-17095 The statement cache size must be specified.
ORA-17096 Unable to enable statement caching for this logical connection.
ORA-17097 The element type of PL index table is invalid.
ORA-17098 The empty LOB operation is invalid.
ORA-17099 The specified array length of the PL index table is invalid.
ORA-17100 The specified database Java object is invalid.
ORA-17103 The connection type returned by getConnection is invalid. Use getJavaSqlConnection instead.
ORA-17104 The SQL statement to be executed must be specified with a non-null string.
ORA-17105 The session time zone must be set for the connection.
ORA-17107 The specified proxy type is invalid.
ORA-17108 The maximum length is not specified in defineColumnType.
ORA-17109 The standard Java character encoding was not found.
ORA-17110 The statement has been executed, with a warning returned.
ORA-17111 The specified connection cache TTL timeout period is invalid.
ORA-17112 The specified thread execution interval is invalid.
ORA-17113 The thread execution interval is longer than the cache timeout period.
ORA-17114 Commits cannot be performed by using local transactions in a global transaction.
ORA-17115 Local transaction rollback cannot be used in a global transaction.
ORA-17116 Automatic commit cannot be enabled in an active global transaction.
ORA-17117 Savepoints cannot be set in an active global transaction.
ORA-17118 The ID of a named savepoint cannot be obtained.
ORA-17119 The name of an unnamed savepoint cannot be obtained.
ORA-17120 Cannot set a savepoint with automatic commit enabled.
ORA-17121 Cannot roll back to a savepoint with automatic commit enabled.
ORA-17122 Cannot roll back to a local savepoint for which auto commit is enabled in a global transaction.
ORA-17123 The specified statement cache size is invalid.
ORA-17124 The deactivation timeout period specified for the connection cache is invalid.
ORA-17125 The explicit cache returned an invalid statement type.
ORA-17126 The fixed wait timeout period has expired.
ORA-17127 The fixed wait timeout period specified is invalid.
ORA-17128 The SQL string is not a query.
ORA-17129 The SQL string is not a DML statement.
ORA-17132 The requested conversion is invalid.
ORA-17133 UNUSED.
ORA-17134 The length of named parameters in the SQL statement exceeds 32 characters.
ORA-17135 The parameter name used in setXXXStream has appeared more than once in the SQL statement.
ORA-17136 The format of the datalink URL is invalid. Try using getString().
ORA-17137 The connection cache is not enabled, or the valid data source of the cache is not enabled.
ORA-17138 The name of the connection cache is invalid. The string must be valid and unique.
ORA-17139 The attribute of the connection cache is invalid.
ORA-17140 A connection cache with this name already exists.
ORA-17141 The connection cache with this name does not exist.
ORA-17142 The connection cache with this name is disabled.
ORA-17143 The connection found in the connection cache is invalid or has expired.
ORA-17144 The statement handle is not executed.
ORA-17145 The ONS event received is invalid.
ORA-17146 The version of the ONS event received is invalid.
ORA-17147 The SQL statement attempted to set an unspecified parameter.
ORA-17149 This is already a proxy session.
ORA-17150 Parameter error in the proxy session.
ORA-17151 The CLOB data item is too large to be stored in the Java string.
ORA-17152 This method is implemented in logical connections only.
ORA-17153 This method is implemented in physical connections only.
ORA-17156 The array size is invalid for end-to-end metrics.
ORA-17157 setString can process only strings containing less than 32766 characters.
ORA-17158 Duration is invalid for the function.
ORA-17159 The metric for executing end-to-end tracing is too long.
ORA-17160 The serial number of the execution context ID is out of range.
ORA-17161 The transaction mode used is invalid.
ORA-17162 The holdability value is not supported.
ORA-17163 getXAConnection() cannot be used when connection caching is enabled.
ORA-17164 Cannot call getXAResource() from a physical connection when caching is enabled.
ORA-17165 The PRIVATE_JDBC package of the connection does not exist in the server.
ORA-17166 Failed to fetch the PL statement.
ORA-17167 The PKI class cannot be found. To use the connect/ feature, oraclepki.jar must be in the classpath.
ORA-17168 An error occurs when storing the key. When you open the wallet ( cwallet.sso), check the location of the wallet and use the mkstore utility to ensure that this wallet contains the correct identity credentials.
ORA-17169 Failed to bind the stream to ScrollableResultSet or UpdatableResultSet.
ORA-17170 The namespace cannot be empty.
ORA-17171 The attribute length cannot exceed 30 characters.
ORA-17172 The attribute value cannot exceed 400 characters.
ORA-17173 Not all return parameters have been registered.
ORA-17174 The only supported namespace is CLIENTCONTEXT.
ORA-17175 An error occurred during remote ONS configuration.
ORA-17259 SQLXML cannot find an XML jar file in the classpath.
ORA-17260 You are attempting to read an empty SQLXML.
ORA-17261 You are attempting to read a non-readable SQLXML.
ORA-17262 You are attempting to write a non-writable SQLXML.
ORA-17263 SQLXML cannot create a result of this type.
ORA_17264 SQLXML cannot create a source of this type.

Previous topic

Distributed transaction examples
Last

Next topic

Data types supported in Oracle mode
Next
What is on this page
Error message structure
General JDBC error messages