2012-01-20 9 views
4

をスロー:Oracleのリフレッシュは、単純な更新スクリプトを持つテーブルが見つからない例外

ORA-00942: table or view does not exist 
ORA-06512: at "SYS.DBMS_SNAPSHOT", line 2251 
ORA-06512: at "SYS.DBMS_SNAPSHOT", line 2457 
ORA-06512: at "SYS.DBMS_SNAPSHOT", line 2426 
ORA-06512: at line 2 
00942. 00000 - "table or view does not exist" 

質問:私は何をしないのです

BEGIN 
DBMS_SNAPSHOT.REFRESH(
    LIST => 'SCHEMA_NAME.TABLE_NAME', 
    PUSH_DEFERRED_RPC => TRUE, 
    REFRESH_AFTER_ERRORS => FALSE, 
    PURGE_OPTION => 1, 
    PARALLELISM => 0, 
    ATOMIC_REFRESH => TRUE, 
    NESTED => FALSE); 
END; 

Oracleは、ということを主張していますか?

  • スキーマは結果が(いくつかの他のテーブルまたはビューに依存して、ビューの一般的な場合すなわち
+0

スキーマを指定してみましたか?マテリアライズド・ビュー名のみ?質問の更新としてMVのddlを置くことができますか? –

+1

このページは役に立ちます:http://www.dba-oracle.com/sf_ora_00942_table_or_view_does_not_exist.htm –

+0

更新された質問を参照してください。 –

答えて

1

同じで指定されていない場合リフレッシュMVは

  • 存在しません他のデータに依存する可能性があります)、依存関係が壊れています。この特定の場合、ビューは、列が欠落していた表に依存する他のビューに依存していました。 ThanxをhintとするとFrosty Zになる。

  • 0

    私は

    ALTER MATERIALIZED VIEW schema_name.table_name COMPILE; 
    

    を実行すると、この問題を解決できることを他の場所で読みました。

    私にとってはうまくいかず、マテリアライズドビューを完全に削除して再作成する必要があります。

    関連する問題