2

When a function-based index created using

CREATE INDEX I_FN_TEST
ON T_TEST (TESTPKG.TESTFUNC (TEST_COLUMN));

Oracle appends the current schema name to the TESTPKG call, making it CURRSCHEMA.TESTPKG.TESTFUNC. This is observed running by

SELECT column_expression
  FROM dba_ind_expressions
 WHERE index_owner = 'CURRSCHEMA' AND index_name = 'I_FN_TEST';

COLUMN_EXPRESSION                                 
--------------------------------------------------
"CURRSCHEMA"."TESTPKG"."TESTFUNC"("TEST_COLUMN")         
1 row selected.

CURRSCHEMA is my dev schema and DDL diffs are regularly created to ship developments to production with DBMS_METADATA.GET_DDL.

The problem is now our diff DDL's contains a schema name that does (and should) not exists at the target. Is there any way to prevent appending current schema name to index definition?

0

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Browse other questions tagged or ask your own question.