「平成」を感じるもの

VB6のプログラムから、ストアドを実行すると
エラー 3704(オブジェクトが閉じている間は操作が許可されない)が発生します。

ストアドの内容は次のとおりです
1.あるテーブルの中から条件に一致するレコードを取得し、一時テーブルに格納する
2.一時テーブルを先頭から1行ずつ読み、各レコードの値を使用して別のテーブルへ更新

上記内容を、一時テーブルではなくカーソルを使用するとうまくいきます。

同じような経験をされた方、対処法などご存知でしたら教えてください。

A 回答 (1件)

ひょっとしてストアドからストアドを呼んだりしてませんか。


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

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

お礼日時:2005/03/03 08:29

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!


おすすめ情報