[#30426] CGI でグラフを描くときにお勧めのライブラリは? — 堀川 久 <vzw00011@...>

こんにちは。

12 messages 2001/07/01

[#30453] syntax check without execution? — Tanaka Akira <akr@...17n.org>

最近、eRuby のまねごとをしていて、そのなかで Ruby のコードを生成してい

16 messages 2001/07/04
[#30455] Re: syntax check without execution? — matz@... (Yukihiro Matsumoto) 2001/07/04

まつもと ゆきひろです

[#30479] Object#dup — "Shin'ya Adzumi" <adzumi@...>

あづみです。

20 messages 2001/07/05

[#30512] open errno EALREADY triggerd — "Inoue" <inoue@...>

井上です。

16 messages 2001/07/08

[#30514] Ruby module frame work? — Takahiro Kambe <taca@...>

こんにちは。

16 messages 2001/07/09
[#30515] Re: Ruby module frame work? — matz@... (Yukihiro Matsumoto) 2001/07/09

まつもと ゆきひろです

[#30529] InterBase を使用したい — "YOUJI KUROKAWA" <CQE10242@...>

環境

22 messages 2001/07/09

[#30530] Question about script on the book "Ruby nyuumon" — NAWATE Masahiko <agul@...>

縄手@松江と言います。

17 messages 2001/07/09
[#30531] Re: Question about script on the book "Ruby nyuumon" — rubikitch <rubikitch@...> 2001/07/09

From: NAWATE Masahiko <agul@mag.shimane-u.ac.jp>

[#30533] Re: Question about script on the book "Ruby nyuumon" — NAWATE Masahiko <agul@...> 2001/07/09

縄手@松江です。

[#30734] UML クラス図と Ruby の記述についての対応 — Ken-ichi HASHIMOTO <ken@...>

橋本@福井県在住です。

13 messages 2001/07/28

[#30764] int/int => float? — matz@... (Yukihiro Matsumoto)

まつもと ゆきひろです

50 messages 2001/07/31
[#30767] Re: int/int => float? — keiju@... (石塚圭樹) 2001/07/31

けいじゅ@日本ラショナルソフトウェアです.

[#30768] Re: int/int => float? — matz@... (Yukihiro Matsumoto) 2001/07/31

まつもと ゆきひろです

[#30770] Re: int/int => float? — Take_tk <ggb03124@...> 2001/07/31

たけ(tk)です。

[#30771] Re: int/int => float? — matz@... (Yukihiro Matsumoto) 2001/07/31

まつもと ゆきひろです

[#30785] Re: int/int => float? — Konishi@... (Hiromasa KONISHI) 2001/07/31

 KONISHI Hiromasaです。

[ruby-list:30452] Re: Oracle モジュール

From: ISIHARA HIROSI <ishihara-h@...>
Date: 2001-07-04 02:42:18 UTC
List: ruby-list #30452
関電興業 石原です。

>すみませんが、こんな現象に遭遇した方おられないでしょうか?
>Ruby+Oracleでアプリケーションを作成しているのですが、
>1つのコネクションで、50回以上のSQL文を発行(未COMMIT)
>していると、途中からORA−0000(正常終了)のOCIError
>シグナルが発生するようになってしまいます。
>これを防ぐ方法等をご存知でしたら、ご教授願いたく
>よろしくお願いします。
同様の質問ことがありますが作者のよしださんより
以下のような御返答を戴きました([ruby-list:30119] Re: Oracle 使用時のエラ
ーについて)。
こちらはこれで解決しました。

----吉田正人さんよりの回答--------
オープンされたカーソル数がシステムの上限に達したためです。GC
で使用済みカーソルは解放されますが,できるだけ陽に解放してく
ださい。エラーメッセージがおかしいのは Oracle モジュールのバ
グですね。
以下の様に毎回カーソルを close するか,
  200.times do |i|
    c = conn.exec("insert into TEST
                  (従業員コード,従業員名漢字,従業員名カナ,
                   部課所コード,役職コード,職種コード,身分コード,削除フラ
グ)
                   values (#{i},'てすと','テスト',
                   '00000000','0000','00','00',0)")
    c.close
    print i,"\n"
  end
SQL 変数を使ってカーソルを再利用してください (多分こちらの方
が速いです)。
  c = conn.parse("insert into TEST
                  (従業員コード,従業員名漢字,従業員名カナ,
                   部課所コード,役職コード,職種コード,身分コード,削除フラ
グ)
                   values (:0,'てすと','テスト',
                   '00000000','0000','00','00',0)")
  200.times do |i|
    c.exec(i.to_s)
    print i,"\n"
  end


エラーメッセージを正しく表示させるためには以下のパッチを当て
てください。
--- oracle.c.org    Thu Dec 21 16:20:02 2000
+++ oracle.c   Wed Jun  6 17:07:37 2001
@@ -197,7 +197,7 @@
   cursor->conn = oci;
   err = oopen(&(cursor->cda), &(oci->lda), NULL, -1, -1, NULL, -1);
   if (err) {
-    oerhms(&(oci->lda), oci->lda.rc, buf, sizeof(buf));
+    oerhms(&(oci->lda), cursor->cda.rc, buf, sizeof(buf));
     rb_raise(eOCIError, buf);
   }
   cursor->opened = 1;
--
--吉田正人さんからの回答-----------------------


   関電興業情報システム 石原<ishihara-h@kanden-kogyo.co.jp>


In This Thread

Prev Next