Skip to end of banner
Go to start of banner

Upgrading from Oracle JDBC 11.2.0.4 Driver to 19.20.0.0 Driver

Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 3 Next »

Overview

The JDBC driver for Oracle in the Oracle Snap Pack is upgraded from OJDBC6 JAR (11.2.0.4 version) to OJDBC10 JAR (19.20.0.0 version). As part of this upgrade, the 19.20.0.0 JDBC driver is bundled with the Oracle Snap Pack as the default JDBC driver.

Behavior Changes

This driver upgrade has resulted in specific behavior changes within the Snap Pack. These changes are related to status codes and success and failure messages. This table lists these changes:

Scenario in Oracle Snaps

Error from the Old Oracle Driver

Error after the Oracle Driver and JOOQ upgrade

Oracle - Insert: For the insert operation, when you enter a string value instead of an integer in a numeric column.

Error Message: SQL operation failed.

Reason: ORA-01722: invalid number , error code: 1722, Coracle-Insert ? BH D7 A ® 'SQL state: 42000,

Resolution: Please check for valid Snap properties and input data.

Error Message: Invalid integer: <string>

Reason: The string value is not a number.

Resolution:

Oracle - Execute, Oracle - Insert, and Oracle - Merge: When the execute, insert, and merge operations are successful.

Status: "-2"

Message: Batch statement executed successfully, but no count of the number of rows it affected is available.

Status: 1

Message: success

Oracle - Delete, Oracle - Execute, and Oracle - Update: When the delete, update, and execute operations are successful.

Status: "-2"

Message: Batch statement executed successfully, but no count of the number of rows it affected is available.

Status: "number of rows impacted"

Message: success

Oracle - Insert: When the insert operation fails.

 

Case 1: When you insert string in place of number data type.

reason=ORA-01722: invalid number

Case 1: When you insert string in place of number data type.

reason=the string value is not a number

Case 2: Insert batch records into not null column type- one record specified with null value to fail and route to error view.

Case 2: The errors are the same in both drivers, but the reason is repeated twice in older drivers.

Oracle - Execute and Oracle - Insert: Batch operation when Auto commit checkbox is Selected.

 

Error: Batch operation failed

In the old version, when an error record occurs during a batch operation, the entire batch fails, and records are redirected to the error view. As a result, no records are inserted into the database.

Error: SQL operation failed

In the new version, if there is an error record in the batch operation, the records before the problematic one are inserted into the database, while the records after it are routed to the error view.

Records are inserted into the table because the Auto-commit checkbox is selected.

Auto Commit checkbox is Deselected

Error: 'Batch operation failed'

In the old version, when an error record occurs during a batch operation, the entire batch fails and records are redirected to the error view. As a result, no records are inserted into the database.

Error: 'SQL operation failed'

In the new version, if there is an error record in the batch operation, the records before the problematic one are inserted into the database, while the records after it are routed to the error view.

Records are not inserted into the table because the Auto-commit checkbox is deselected

Oracle - Select

Displays data type as DECIMAL for numeric columns.

New driver displays data type as "NUMERIC" instead of "DECIMAL"

Oracle - Execute: Insert operation

When you pass a spl character( ' ):

"reason=Invalid query: Insert into #TABLE_NAME.COLUMN_NAME# values ('windyi'eee')"

"reason=error occurred during batching: ORA-00917: missing comma"

Oracle - Delete

Delete_Condition contains special characters:

"{reason=Syntax error at or near one of single-quotes}"

"{reason=ORA-01740: missing double quote in identifier
, error code: 1740, SQL state: 42000}"

FAQ for Upgrading from Oracle JDBC 11.2.0.4 Driver to 19.20.0.0 Driver

What is happening?

The Oracle JDBC Driver is upgraded from OJDBC6 JAR (11.2.0.4 version) to the OJDBC10 JAR (19.20.0.0 version). The OJDBC10 JAR is bundled with the Oracle Snap Pack as the default driver.

Why are we upgrading the Oracle driver?

The decision to upgrade the Oracle JDBC driver from version 11.2.0.4 to 19.20.0.0 is made to improve security, performance, stability, and reliability. Oracle Database 19c offers significant enhancements, bug fixes, and new features unavailable in the 11g version. Upgrading to 19.20.0.0 ensures continued support and compatibility with modern systems and provides a more efficient and secure database environment.

What is the timeline for this upgrade?

This upgrade is available as a stable upgrade for November 8, 2023, while you can have an early preview available shortly after the August 2023 GA release.

Will I be impacted?

If you are using the default version, you will be impacted. The impact may be minimal if you utilize the latest driver or a higher version than 19c.

Do I need to reconfigure my accounts?

You do not have to reconfigure your account settings or drivers; the account can remain as-is to work with the latest driver. However, if you currently use the default version and wish to revert to the previous version behavior, we recommend you to use the OJDBC6 JAR.

How do you override the behavior changes?

Use the OJDBC6 JAR from the 11.2.0.4 version to maintain the same behavior as before the driver upgrade.

  • No labels