• ベストアンサー

oracle10gと9iの違いについて

お世話様です。 最近、DBサーバをoracle9iからoracle10gに変えることになったのですが、 oracle9iで select LEVEL, 項目1, 項目2 FROM テーブル1 のSQLが動いていたのですが、 oracle10gでは、このSQLが動かなくなり、 connect by区を指定するようにエラーが出てくるようになってしまいました。 oracleのバージョンによって、動かなくなると言うことはあるのでしょうか? それともORACLEの設定を変更すると動くようになるのでしょうか。 ご教授よろしくお願い致します。

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

  • ベストアンサー
  • nora1962
  • ベストアンサー率60% (431/717)
回答No.1

検証したところ、再現しました。ORACLEの仕様が変わったのだと思います。 しかし、9i以前でも select LEVEL, 項目1, 項目2 FROM テーブル1 ではLEVELは常に、ゼロを返しませんか? なさりたいこと(得たい結果)を補足されると別の解決策があるかも しれませんよ。

mario_f4ej
質問者

お礼

ORACLE7の環境があったので、 そこでためしたところ結果として0が返ってきました。 バージョンの違いが原因なのですね。 データを移行するのにPL/SQL内のSQLに上記のようなSQLがあり、 エラーが発生しておりました。 実際にLEVEL擬似列に関しては、内部で使っていなかったのですが、 なぜ以前のORACLEでは動いていたか、の調査でつまづいていました。 ご解答ありがとうございました。

関連するQ&A