2013-05-13 25 views
6

をロードすることはできません私のOracleバージョン Oracle Database 11gのEnterprise Editionのリリース11.2.0.2.0である - 64ビットの生産PLS-907は次のライブラリ部

私は列を追加するテーブルを変更しようとしていたが、それは時間がかかったので、時間、私はそれをキャンセルしました。

いつかして、ユニットを参照しているすべてのパッケージとビューでエラーが発生しました。多くの情報を与えるものではありません。このエラーにグーグルライブラリユニット(テーブル名)

をロードすることはできません。 エラーメッセージは

PLS-907です。一つの場所では、私は、以下のコマンドが役立つことを見たが、それは非常に危険なコマンドとして私には思える

ALTER SYSTEMフラッシュSHARED_POOL

誰もがこれを理由と解決策で私を助けることができますか?単にパッケージを再コンパイルすると、この問題を解決し、いくつかの回は、それが自動的にそれを再コンパイルしますので

おかげで、それが原因でDBリンクで起こる ジーヴァン

+0

あなたのテーブルは変わった状態にあり、それを参照するパッケージは再コンパイルできないようです。どのようにフラッシングが効果を持つかわからないが、私はそれが危険だとはっきりしない。あなたのテーブルを記述することは新しい列を表示するのですか?何かが 'user_tables'で気になりますか? –

+0

新しい列は追加されず、user_tablesのステータスはVALID – Jeevan

+0

@Alexと表示されます。辞書が実際の表と同期していない場合は、辞書プールをフラッシュすると役立ちます。この問題はテスト環境では再現できないので、テーブルを垂れ下げて再作成し、プールをフラッシュしないようにしてください。 – haki

答えて

4

が接続をドロップして再作成されます。

関連する問題