職場で使える!30代エンジニアのoracleエラー対応

とある三流エンジニアが日々起きた出来事や今打ち込んでいることについて備忘録として残していきます。

oracle

新発見ORA-01000:最大オープン・カーソル数を超えました。の対処法

投稿日:2017年1月24日 更新日:

スポンサーリンク

意外なことが起因していることがあります。

 

本日は、

ORA-01000

です。

 

Javaやcobolの案件でよく

ORA-01000:最大オープン・カーソル数を超えました。

のエラーを目にすることがあるかと思います。

 

これは、

データベースサーバー側で同時に使用可能なカーソルの最大数

(初期化パラメータ:OPEN_CURSORSの値)

を超えてカーソルをオープンした場合に発生することは

言うまでもありません。

 

しかし、いくらソースを確かめても

カーソルの閉じ忘れのようなコーディングは

簡単には見つけられないものです。

 

ここで気を付けていただきたいのは、

何もカーソルの閉じ忘れは、

コーディングミスによるものだけではないということです。

 

例えば、

SQLに不備があり、

正常終了していない場合でも

カーソルはクローズされないのです。

 

仮に上記のように

SQLに不備があり

カーソルがクローズされなかった場合は、

そもそもそのSQLで取得した結果すら

まともに返却できていないことがあります。

 

したがって、

その結果を使って計算している箇所など、

本当に正しい値が返却されているかは

見直す必要があることに注意してください。

 

明らかに構文エラーなどが発生した場合は、

他のORACLEエラーが発生するため、

それなら逆に分かりやすいですね。

 

スポンサーリンク
にほんブログ村 ライフスタイルブログ 40代 自分らしさへ
にほんブログ村
にほんブログ村 ネットブログ Googleへ
にほんブログ村
にほんブログ村 IT技術ブログ Oracleへ
にほんブログ村

-oracle
-,

執筆者:


comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

関連記事

最速で「ORA-12154:TNS:サービス名を解決できませんでした。」を解決する方法

今日は ORA-12154 について、解説します。   tnsnames.ora構成ファイルに指定されたネット・サービス名が 見つからない時に発生するエラーです。 この場合の多くは、 接続の …

SQLで改行コードを任意の文字に置換する方法

Replace(Replace(カラム名, Char(13), 任意文字), Char(10),任意文字) とすればよい。 ここで、 Char(13) : CR(キャリッジリターン) Char(10) …

ORA-01427:「単一行副問合せにより2つ以上の行が戻されます」の対処法

メッセージの通り、 単一行副問合せのクエリーの抽出結果が 単一行であることが要求されているにも関わらず、 結果が複数行返されている時に発生する。   原因 多くの場合、 条件文において co …

no image

データベース変更後の文の呼び出しにおけるエラー(ステートメントキャッシュに関する制限)

本日は 「データベース変更後の文の呼び出しにおけるエラー」 についてです。   何かといいますと、 データベース変更後の文の呼び出しにおけるエラーとありますが、 この場合のエラーとは実際にe …

ORA-01445:「たとえば、キー保存表のない結合ビューからROWIDを選択できません」対処法

このエラーが発生した場合、 現在エラーが発生しているSQLを 修正する必要があります。   SELECT文の結果の列数が1050を超える場合、 結合文の書き方を、 ANSI形式(LEFT J …

まだデータがありません。