こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

締切り済みの質問

DBから取得したオブジェクトの受け渡し方法

はじめましてVB初心者でわけが分からなくなっています。DBをクローズした後に取得したレコードセットを他の関数に渡すにはどうしたらよいでしょうか?おそらく、そんなのcloseせずにやればいいと思うかもしれませんが、可能かどうかがわかりません。どうか教えてくださいよろしくお願い致します。
下記のコードにて行ってます。Set rs = cn.Execute(strSQL)で取得しています。rsをDBを閉じた後も他の関数に渡せるようにしたい訳です。m(..)m

Dim cn As Object
Dim rs As Object
Private Sub getData()
Dim strSQL As String
Set cn = CreateObject("ADODB.Connection")
cn.Open "省略"
strSQL = "SELECT * FROM swan"
Set rs = cn.Execute(strSQL)
Set rs = nothing
Set cn.close
Set cn = nothing
End Sub

投稿日時 - 2006-04-22 09:58:32

QNo.2106714

すぐに回答ほしいです

このQ&Aは役に立ちましたか?

1人が「このQ&Aが役に立った」と投票しています

回答(2)

ANo.2

RSをプロシージャー外で宣言しているんですから

rs.Close
Set rs=Nothing
をしなければいいのでは?

受け取った側のプロシージャーで処理すればいいと思いますよ。


DimにするかPublicにするかはその状況によりますね。

投稿日時 - 2006-04-23 19:03:31

ANo.1

adtgファイルとして保存してはどうですか?

参考URL:http://www.google.co.jp/search?q=adtg&start=0&hl=ja&lr=lang_ja&ie=utf-8&oe=utf-8&client=firefox&rls=org.mozilla:ja:offic

投稿日時 - 2006-04-23 15:30:58

補足

早速のご回答どうも有り難う御座います!!とても参考になりました。(^^)欲をいって申し訳ないのですが、adtgファイルに保存せずに(特殊な変数?これが謎)にオブジェクトをセットして渡す方法はないのでしょうか?m(..)m

投稿日時 - 2006-04-23 16:44:07

お礼

どうも有り難う御座いました。ありがとう!!

投稿日時 - 2006-04-23 16:55:05

あなたにオススメの質問