• 締切済み

ADOからのストアド実行でエラーが発生します

VB6のプログラムから、ストアドを実行すると エラー 3704(オブジェクトが閉じている間は操作が許可されない)が発生します。 ストアドの内容は次のとおりです 1.あるテーブルの中から条件に一致するレコードを取得し、一時テーブルに格納する 2.一時テーブルを先頭から1行ずつ読み、各レコードの値を使用して別のテーブルへ更新 上記内容を、一時テーブルではなくカーソルを使用するとうまくいきます。 同じような経験をされた方、対処法などご存知でしたら教えてください。

みんなの回答

  • kikaida-
  • ベストアンサー率69% (37/53)
回答No.1

ひょっとしてストアドからストアドを呼んだりしてませんか。 一時テーブルはコネクションごとに作成されるもので、コネクションが閉じれば消えてしまいます。 ストアドもこのコネクションと同じものにあたります。 AというストアドからBというストアドを呼び、Bの中で一時テーブルを作成する処理を行うと、Bが終了した時点で一時テーブルは削除されてしまいます。

Laphroaig
質問者

お礼

アドバイス、ありがとうございます。 原因は全然違うところでしたが、勉強になりました。

関連するQ&A