こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

解決済みの質問

Oracleストアドの互換性について

Oracleのストアドについて質問です。
32bit版ではコンパイルが通るのに、64bit版ではコンパイルが通りません。
Ora-00918列定義が未確定がでます。

列名ではなく、列番号で指定するとコンパイルが通るようになります。
ただし、きちんと値をとってきていない。

・Oracle10.2.0.3 x32(windowsServer2003x32)でOK。

・Oracle10.2.0.5 x64(windowsServer2008x64)ではコンパイルエラーになります。(Ora-00918)
列定義が未確定がでます。



同じくOracle11.0.1x64(windowsServer2008x64)でも同じエラーが出ます。

文字コードはS-JISです。

Oracle10.2.0.5にアップのパッチを当てています。

64bitでなにかあるのでしょうか?

投稿日時 - 2014-02-13 17:27:51

QNo.8473654

すぐに回答ほしいです

質問者が選んだベストアンサー

こんにちわ。

> Oracle10.2.0.5 x64(windowsServer2008x64)ではコンパイルエラーになります。
> (Ora-00918)列定義が未確定がでます。
> 64bitでなにかあるのでしょうか?
Bit 数の違いよりも、Patch Level の違いが影響している可能性が高いです。
エラー発生箇所で参照しているオブジェクトの定義が、10.2.0.3 と10.2.0.5
で差異があるのでは無いでしょうか?

エラーになっているSQL とそのSQL が参照しているオブジェクト定義を確認
して見て下さい。
ORA-918 は、同一ビュー (テーブル) に同じ列名が複数回出現するような
場合に発生するエラーですが、稀にV$ やX$ でそのような事があります。

投稿日時 - 2014-02-18 22:47:08

お礼

ありがとうございます。

テーブル名をつけて参照すると通りました。

投稿日時 - 2014-02-28 09:47:36

このQ&Aは役に立ちましたか?

2人が「このQ&Aが役に立った」と投票しています

回答(1)

あなたにオススメの質問