- Remove the use of the PL/SQL function.
- Mark the PL/SQL function as DETERMINISTIC.
- Disable the REWRITE option on the materialized view. The function should be marked DETERMINISTIC only if it always returns the same result value for any given set of input argument values, regardless of any database state or session state. Do not mark the function as DETERMINISTIC if it has any meaningful side-effects.
o dimension attribute extended level syntax ATTRIBUTE <attribute name> LEVEL <level name> DETERMINES <column name>
o DBMS_ADVANCED_REWRITE.DECLARE_REWRITE_EQUIVALENCE
o DBMS_ADVANCED_REWRITE.ALTER_REWRITE_EQUIVALENCE
o DBMS_ADVANCED_REWRITE.DROP_REWRITE_EQUIVALENCE
o DBMS_ADVANCED_REWRITE.VALIDATE_REWRITE_EQUIVALENCE
1. The immediate parent of the child level must be a skip level.
2. The child level cannot be a skip level.
3. The ancestor level must be a non-skip level.
4. The ancestor level must be the nearest non-skip level to the child level in the hierarchy.
1. A skip level is defined over one or more of the JOIN KEY columns.
2. The attribute clauses of a skip level determine one or more of the JOIN KEY columns.
- the column is enabled to store instances of some subtype of the type being dropped.
- the column is enabled to store instances of only one type
- Checkout is requested for a resource that isn"t under version control". Only version-controlled resource can be checked out.
- Checkout is requested for a row of a non-versioned table.
1. nesting of WITH clause within WITH clause not supported yet
2. For a set query, WITH clause can"t be specified for a branch.
3. WITH clause can"t sepecified within parentheses.