株式会社コーソル

KNOWLEDGE

コーソルの技術情報

コーソルでは経験豊かなエンジニアが、Oracle Databaseに関するお役立ち情報を発信しています。
データベースのチューニングや設定にお役立ていただけます。

KNOWLEDGE検索人気のキーワード

Oracle DB Tips

ORA-04063: ???にエラーがあります。

01.ORA-04063エラーとはどのようなエラーか?

ORA-04063エラーは、アクセスしたオブジェクトが無効である場合に発生します。

02.ORA-04063エラーのエラー出力例

SQL> create table tbl0 (n number);
表が作成されました。
SQL> create view  vw0  as select n from tbl0;
ビューが作成されました。
SQL> alter table tbl0 RENAME COLUMN n TO m;
表が変更されました。
SQL> select * from vw0;
select * from vw0
*
行1でエラーが発生しました。:
ORA-04063: view "AAA.VW0"にエラーがあります。

view “AAA.VW0″の部分にビューもしくはストアドプロシージャ名が入ります。

03.ORA-04063エラーの一般的な発生要因と対処

  • 無効なビューの参照
  • 定義にエラーがあるストアド・プロシージャの実行

 

ビューの参照でエラーが発生した場合

ビュー定義に含まれるSELECT文が参照するオブジェクトの定義が変更され、ビュー定義に含まれるSELECT文が正常に実行できないことが原因であるため、以下の2つの方法のうち、いずれかの方法で対処します。

  • ビュー定義に含まれるSELECT文を、正常に実行できるように修正して、ビューを再作成する
  • ビュー定義に含まれるSELECT文が参照するオブジェクトの定義を、ビュー定義に含まれるSELECT文が正常に実行できるように修正したうえで、ビューをコンパイルする。(ALTER VIEW … COMPILE)

 

ストアド・プロシージャの実行でエラーが発生した場合

実行したストアド・プロシージャの定義にエラーがあるため、コンパイル可能な状態までストアドプロシージャの定義を修正する必要があります。

04.キーワード

ORA-4063 ORA-04063 ビュー ストアド プロシージャ コンパイル 無効化