[[email protected] admin]$ pwd/u01/app/oracle/product/12.1.0/dbhome_1/rdbms/admin[[email protected] admin]$ grep-rn ' int$dba_constraints '././e1201000.sql:138:rem thbaby 09/17/13-lrg 9710290:reload INT$DBA_CONS Traints./e1201000.sql:150:rem thbaby 08/13/13-16956123:drop View Int$int$dba_constraints./e1201000.sql:881:drop View int$int$dba_constraints;. /e1201000.sql:883:--LRG 9710290:12.1.0.2->12.1.0.1 downgrade drops int$int$dba_constraints,./e1201000.sql:884:- -which causes int$dba_constraints to be marked invalid. This, in turn,./e1201000.sql:887:--definition of int$dba_constraints right after int$int$dba_constraints. E1201000.sql:889:create or replace View int$dba_constraints common_data./cdcore.sql:37:rem quer Ying Int$dba_constraints./cdcore.sql:76:rem thbaby 05/31/13-16813682:int$dba_constraints is not common data./C Dcore.sql:14122:create or replace View int$int$dba_constraints common_data./cdcore.sql:14181:--Int$dba_constraints has the object Types-a view and a table. /cdcore.sql:14191:create or replace view Int$dba_constraints./cdcore.sql:14205:from int$int$dba_constraints INT$INT$ Dba_constraints./cdcore.sql:14206:where int$int$dba_constraints. object_type# = 4./cdcore.sql:14207:or (int$int$dba_constraints. object_type# = 2./cdcore.sql:14208:and (int$int$dba_constraints. origin_con_id in (0,1)./cdcore.sql:14209:or int$int$dba_constraints. sharing = 0)./cdcore.sql:14211:--even though dba_constraints and int$dba_constraints look very similar./cdcore.sql:142 13:--selects fewer columns than int$dba_constraints. /cdcore.sql:14228:from int$dba_constraints./cdcore.sql:14320:from no_root_sw_for_local (INT$INT$DBA_CONSTRAINTS) Int$int$dba_constraints./cdcore.sql:14321:where int$int$dba_constraints. object_type# = 4/* views */./cdcore.sql:14322:and int$int$dba_constraints. Owner=sys_context (' USERENV ', ' Current_User ')./cdcore.sql:14330:from NO_common_data (int$int$dba_constraints) Int$int$dba_constraints./cdcore.sql:14331:where INT$INT$DBA_CONSTRAINTS. object_type# = 2/* Tables */./cdcore.sql:14332:and int$int$dba_constraints. Owner=sys_context (' USERENV ', ' Current_User ')./cdcore.sql:14416:from int$dba_constraints./upobjxt.lst:60914:sys, int$dba_constraints,,4,./upobjxt.lst:61068:sys,int$int$dba_constraint s,,4,./e1102000.sql:9039:drop view int$dba_constraints;
Then navigate to the following line:
./cdcore.sql:14191:create or Replace view int$dba_constraints
Then VI cdcore.sql, find the following information:
--Int$dba_constraints has the object Types-a view and a table.--the dictionary information about linked views is store D only in the ROOT,--with a dummy obj$ the row in the PDB to indicate this. Hence We can use common--Data View mechanism to fetch view constraints.--The dictionary information about linked tables however is stored in--all the containers. Hence using common Data View mechanism would fetch--duplicate constraints. So we added a condition this if the object is--a not a linked table then fetch the constraint and if it's a linked--tab Le then fetch the constraint only if the origin con id is root or--non-cdb.create or replace view int$dba_constraints (OWNER, Constraint_name, Constraint_type, TABLE_NAME, object_id, object_type#, search_condition, SEARCH_CONDITION_ VC, R_owner, R_constraint_name, Delete_rule, STATUS, deferrable, DEFERRED, VALIDATED, GENERATED, Bad, RELY, Last_c Hange, Index_owner, Index_name, INVALID, view_related, sharing, origin_con_id) asSelect OWNER, Constraint_name, Constraint_type, TABLE_NAME, object_id, object_type#, search_condition, SEARCH_ CONDITION_VC, R_owner, R_constraint_name, Delete_rule, STATUS, deferrable, DEFERRED, VALIDATED, GENERATED, bad , RELY, Last_change, Index_owner, Index_name, INVALID, view_related, sharing, Origin_con_idfrom int$int$dba_constr Aints Int$int$dba_constraintswhere int$int$dba_constraints. object_type# = 4 OR (int$int$dba_constraints. object_type# = 2 and (int$int$dba_constraints. origin_con_id in (0,1) OR int$int$dba_constraints. sharing = 0))/--even though dba_constraints and int$dba_constraints look very similar--in their definitions, we need bot H These views because dba_constraints--selects fewer columns than int$dba_constraints.create or replace view Dba_constrai NTS (OWNER, constraint_name, Constraint_type, TABLE_NAME, search_condition, SEARCH_CONDITION_VC, R_OWNER, R_CON Straint_name, Delete_rule, STATUS, Deferrable, DEFERRED, VALIDATED, GENERATED, Bad, RELY, Last_change, Index_owner, Index_name, INVALID, View_rela TED, origin_con_id) asselect OWNER, constraint_name, Constraint_type, TABLE_NAME, search_condition, SEARCH_CONDITION_ VC, R_owner, R_constraint_name, Delete_rule, STATUS, deferrable, DEFERRED, VALIDATED, GENERATED, Bad, RE LY, Last_change, Index_owner, Index_name, INVALID, view_related, Origin_con_idfrom int$dba_constraints/
Find the definition of int$dba_constraints under the $oracle_home/rdbms/admin of 12c