My Oracle Support Banner

The DBMS_COMPARISON.CREATE_COMPARISON Fails With ORA-44004 Even Though The Object Name Provided Is a Valid One (Doc ID 1353100.1)

Last updated on FEBRUARY 19, 2019

Applies to:

Oracle Database - Enterprise Edition - Version 11.1.0.6 to 11.2.0.2 [Release 11.1 to 11.2]
Information in this document applies to any platform.

Symptoms

When using DBMS_COMPARISON.CREATE_COMPARISON for an object (schema or table) which has special characters like '/' for example, the procedure will fail with following errors:

-- Note: This is simple test-case to demonstrate the problem.
 
$ sqlplus /nolog

conn / as sysdba

grant dba to <SCHEMA1>identified by testcase;
grant dba to <SCHEMA2> identified by testcase;

create table <SCHEMA1>."/<TABLE_NAME>" (col1 number(2) primary key);
create table <SCHEMA2>."/<TABLE_NAME1>" (col1 number(2) primary key);

BEGIN
 DBMS_COMPARISON.CREATE_COMPARISON  (
 comparison_name => '<COMPARISON NAME>'  ,
 schema_name     => '<SCHEMA1>'  ,
 object_name     => '"/<TABLE_NAME>"'  ,
 dblink_name     => null  ,
 remote_schema_name=>'<SCHEMA2>'  ,
 remote_object_name=> '"/<TABLE_NAME1>"',
 column_list => '*');
END;
/

ORA-44004: invalid qualified SQL name
ORA-06512: at "SYS.DBMS_ASSERT", line 188
ORA-06512: at "SYS.DBMS_COMPARISON", line 404

Changes

Using tables with special characters.

Cause

To view full details, sign in with your My Oracle Support account.

Don't have a My Oracle Support account? Click to get started!


In this Document
Symptoms
Changes
Cause
Solution
References


My Oracle Support provides customers with access to over a million knowledge articles and a vibrant support community of peers and Oracle experts.