2.5 Known Restrictions
This topic describes known restrictions with Oracle Database Gateway for DRDA.
The following restrictions are known to exist for the products in the 12c Release 2 (12.2). Restrictions are not scheduled to change in future releases. Refer to Developing Applications, for information or limitations when developing your applications.
- DB2 Considerations
These topics describe that DB2 considerations that exist in the 12c Release 2 (12.2). - SQL Limitations
These topics describe the SQL limitations for Oracle Database Gateway for DRDA.
Parent topic: Release Information
2.5.1 DB2 Considerations
These topics describe that DB2 considerations that exist in the 12c Release 2 (12.2).
- DD Basic Tables and Views
The owner of DD basic tables and views isOTGDB2
. This cannot be changed. - SUBSTR Function Post-Processed
TheSUBSTR
function can be used with the Oracle database in ways that are not compatible with a DRDA server, such as DB2 UDB for z/OS. - Data Type Limitations
Data type limitations with Oracle Database Gateway for DRDA. - Null Values and Stored Procedures
Null values are not passed into, or returned from, calls to stored procedures through the gateway. - String Concatenation of Numbers
DB2 Universal Database does not support string concatenation of numbers. - GLOBAL_NAMES Initialization Parameter
IfGLOBAL_NAMES
is set toTRUE
in the Oracle databaseINIT.ORA
file, then in order to be able to connect to the gateway, you must specify the Heterogeneous Services (HS) initialization parameter,HS_DB_DOMAIN
, in the Gateway Initialization Parameter file to match the value of theDB_DOMAIN
parameter of the Oracle database. - DRDA Package and DB2 Considerations
The gateway utilizes a package for statement execution. This package is implicitly bound the first time the gateway connects to the target DB2 system. - Date Arithmetic
DB2 does not allow number addition or subtraction with date data types. - Row Length Limitation
Because of a restriction of the DRDA architecture, rows with aggregate length exceeding 32 KB in DRDA representation cannot be stored or retrieved. - LONG Data Type in SQL*Plus
SQL*Plus cannot fetch columns with theLONG
data type from the Oracle Database Gateway for DRDA. - Stored Procedures and Transaction Integrity
IBM DB2 has introduced a feature called Commit on Return for stored procedures.
Parent topic: Known Restrictions
2.5.1.1 DD Basic Tables and Views
The owner of DD basic tables and views is OTGDB2
. This cannot be changed.
Parent topic: DB2 Considerations
2.5.1.2 SUBSTR Function Post-Processed
The SUBSTR
function can be used with the Oracle database in ways that are not compatible with a DRDA server, such as DB2 UDB for z/OS.
Therefore, the SUBSTR
function is post-processed. However, it is possible to allow the server to process it natively using the Native Semantics feature. Refer to Developing Applications, for details.
Parent topic: DB2 Considerations
2.5.1.3 Data Type Limitations
Data type limitations with Oracle Database Gateway for DRDA.
Refer to DRDA Data Type to Oracle Data type Conversion for detailed information about data types.
Parent topic: DB2 Considerations
2.5.1.4 Null Values and Stored Procedures
Null values are not passed into, or returned from, calls to stored procedures through the gateway.
Parent topic: DB2 Considerations
2.5.1.5 String Concatenation of Numbers
DB2 Universal Database does not support string concatenation of numbers.
For example, the following is not allowed:
SELECT 2||2 FROM table@dblink
Parent topic: DB2 Considerations
2.5.1.6 GLOBAL_NAMES Initialization Parameter
If GLOBAL_NAMES
is set to TRUE
in the Oracle database INIT.ORA
file, then in order to be able to connect to the gateway, you must specify the Heterogeneous Services (HS) initialization parameter, HS_DB_DOMAIN
, in the Gateway Initialization Parameter file to match the value of the DB_DOMAIN
parameter of the Oracle database.
Refer to Oracle Database Gateway Installation and Configuration Guide for IBM AIX on POWER Systems (64-Bit), Linux x86-64, Oracle Solaris on SPARC (64-Bit), Oracle Solaris on x86-64 (64-Bit) and HP-UX Itanium or Oracle Database Gateway Installation and Configuration Guide for Microsoft Windows, depending on your platform, for more information.
Parent topic: DB2 Considerations
2.5.1.7 DRDA Package and DB2 Considerations
The gateway utilizes a package for statement execution. This package is implicitly bound the first time the gateway connects to the target DB2 system.
Ensure that the user ID connecting to the DB2 system has the necessary privileges to bind a package. Refer to Oracle Database Gateway Installation and Configuration Guide for IBM AIX on POWER Systems (64-Bit), Linux x86-64, Oracle Solaris on SPARC (64-Bit), Oracle Solaris on x86-64 (64-Bit) and HP-UX Itanium or Oracle Database Gateway Installation and Configuration Guide for Microsoft Windows, depending on your platform, for more information.
Parent topic: DB2 Considerations
2.5.1.8 Date Arithmetic
DB2 does not allow number addition or subtraction with date data types.
In general, the following types of SQL expression forms do not work correctly with the gateway because of DB2 limitations:
date + number number + date date - number date1 - date2
The date and number addition and subtraction (date + number, number + date, date - number)
forms are sent through to the DB2 where they are rejected.
Also, DB2 does not perform date subtraction consistently. When you subtract two dates (date1 - date2)
, differing interpretations of date subtraction in DB2 cause the results to vary by server.
Note:
Avoid date arithmetic expressions in all gateway SQL expressions until date arithmetic problems are resolved.Parent topic: DB2 Considerations
2.5.1.9 Row Length Limitation
Because of a restriction of the DRDA architecture, rows with aggregate length exceeding 32 KB in DRDA representation cannot be stored or retrieved.
Parent topic: DB2 Considerations
2.5.1.10 LONG Data Type in SQL*Plus
SQL*Plus cannot fetch columns with the LONG
data type from the Oracle Database Gateway for DRDA.
Parent topic: DB2 Considerations
2.5.1.11 Stored Procedures and Transaction Integrity
IBM DB2 has introduced a feature called Commit on Return for stored procedures.
This feature allows DB2 to perform an automatic commit after a stored procedure runs successfully. This feature is enabled when the procedure is created. To ensure data integrity, the Oracle Database Gateway for DRDA does not support this feature in a heterogeneous environment. When attempting to call a stored procedure that has this feature enabled, through the gateway, the gateway will return an error, ORA-28526
or PLS-00201
(identifier must be declared).
Parent topic: DB2 Considerations
2.5.2 SQL Limitations
These topics describe the SQL limitations for Oracle Database Gateway for DRDA.
- Oracle ROWID Column
The DB2ROWID
column is not compatible with the OracleROWID
column. - Oracle Bind Variables
Oracle bind variables become SQL parameter markers when used with the gateway. - CONNECT BY Is Not Supported
Oracle Database Gateway for DRDA does not supportCONNECT BY
inSELECT
statements.
Parent topic: Known Restrictions
2.5.2.1 Oracle ROWID Column
The DB2 ROWID
column is not compatible with the Oracle ROWID
column.
Because the ROWID
column is not supported, the following restrictions apply:
UPDATE
andDELETE
are not supported with theWHERE CURRENT OF CURSOR
clause. To update or delete a specific row through the gateway, a condition styleWHERE
clause must be used. (Bug No. 205538)When
UPDATE
andDELETE
statements are used in precompiler and PL/SQL programs, they rely internally on the OracleROWID
function.- Snapshots between Oracle database and DB2 are not supported.
Snapshots rely internally on the Oracle
ROWID
column.
Parent topic: SQL Limitations
2.5.2.2 Oracle Bind Variables
Oracle bind variables become SQL parameter markers when used with the gateway.
Therefore, the bind variables are subject to the same restrictions as SQL parameter markers.
For example, the following statements are not allowed:
WHERE :x IS NULL WHERE :x = :y
Parent topic: SQL Limitations
2.5.2.3 CONNECT BY Is Not Supported
Oracle Database Gateway for DRDA does not support CONNECT BY
in SELECT
statements.
Parent topic: SQL Limitations