読者です 読者をやめる 読者になる 読者になる

Oracleのストアドでのエラーの備忘録

以下のエラーについて調べたのでまとめ備忘録。

ORA-04068: パッケージの既存状態は廃棄されました。
ORA-04061: package body “スキーマ.パッケージ名"の既存状態は無効になりました。
ORA-06508: PL/SQL: コールしているプログラム単位が見つかりませんでした。

よくある原因

DBに接続している状態でストアドをリコンパイルして呼び出したりするとこのエラーが発生。これをなくすにはWebアプリケーションとOracleとのコネクションプールを開放、つまりWebアプリケーションを再起動する必要があるようだ。

これに関連したエラー

ORA-04063: view “スキーマ.ビュー名"にエラーがあります。

  1. テーブル定義を変更
  2. 変更したテーブルを参照しているビューを参照するとエラー

コネクションプールを開放しないで回避するには、

  1. テーブル定義を変更
  2. 該当テーブルを参照しているビューも変更

をやらないといけないみたい(本当?)。