Oracle もSQL99 に順ずる方向で進んでいるようです。
そのため、今回のプロジェクトは、"全てのSQLをSQL99に準じて記述する"事になりました。
で、今回のテーブル定義がひどすぎて、
1テーブルに300カラムあるとか、マスターとの結合が5個並ぶとか普通にあります。
(DB定義直せよ…客の意向で直せないんだよ~(T_T))
で、そんなSQLを実行すると、「ORA-03113:通信チャネルでend-of-fileが検出されました」
と言われ、Oracleとの接続が切られます。
なぜ!解らん!
ちなみに、Oracleの外部結合「(+)」を使うと発生しません。
「LEFT JOIN 」を使うと発生します。
ム、むかつく…
Oracle の SQL99 対応は、まだまだ先のようですね…
使用中のOracle:Oracle 11g R2
…?
書きながら思った…
クライアントは、「Oralce10g」だ…
11g にしたら直らないかな…
来週お試ししよう…結果はがんばって書きます。
<<2011年11月22日 追記>>
Client を11g にしたけど無理だった…
やっぱり同じエラーが発生します。
ま、外部結合11テーブル。
300カラム以上のテーブルが2つもあるからなぁ…
テーブル設計をやり直して欲しい…
「NULL AS AAA」と言う記述が多かったので、消してみた。(どうせデータ取れなかったらNULLだしな)
そしたら動いた!!!!
なぜだっ!!!!
とりあえず、固定値「NULL」の値は、消した。80個あった。
SELECT部分だけで、220行あるんだから、そのせいかなぁ?
そのため、今回のプロジェクトは、"全てのSQLをSQL99に準じて記述する"事になりました。
で、今回のテーブル定義がひどすぎて、
1テーブルに300カラムあるとか、マスターとの結合が5個並ぶとか普通にあります。
(DB定義直せよ…客の意向で直せないんだよ~(T_T))
で、そんなSQLを実行すると、「ORA-03113:通信チャネルでend-of-fileが検出されました」
と言われ、Oracleとの接続が切られます。
なぜ!解らん!
ちなみに、Oracleの外部結合「(+)」を使うと発生しません。
「LEFT JOIN 」を使うと発生します。
ム、むかつく…
Oracle の SQL99 対応は、まだまだ先のようですね…
使用中のOracle:Oracle 11g R2
…?
書きながら思った…
クライアントは、「Oralce10g」だ…
11g にしたら直らないかな…
来週お試ししよう…結果はがんばって書きます。
<<2011年11月22日 追記>>
Client を11g にしたけど無理だった…
やっぱり同じエラーが発生します。
ま、外部結合11テーブル。
300カラム以上のテーブルが2つもあるからなぁ…
テーブル設計をやり直して欲しい…
「NULL AS AAA」と言う記述が多かったので、消してみた。(どうせデータ取れなかったらNULLだしな)
そしたら動いた!!!!
なぜだっ!!!!
とりあえず、固定値「NULL」の値は、消した。80個あった。
SELECT部分だけで、220行あるんだから、そのせいかなぁ?