実行結果を表示したい。

解決


ぽしゃった  2008-01-10 18:28:01  No: 138590  IP: 192.*.*.*

この掲示板でVisual BasicからMySQLの接続の仕方をレクチャーしていただき、
テーブルの作成、削除、追加等々の操作を出来るようにはなったのですが、
問い合わせをした結果をラベルやリストボックスなどに表示するようにしたいのですが、どのようにすればよいのでしょうか。

−−−−−−−−−−−−−−−
 Private Sub Command1_click()
  Dim cn As Variant
  Dim sql As String
'** ODBC 接続
  Set cn = CreateObject("ADODB.Connection")
  cn.Open "dsn=***;uid=***;pwd=****"
  cn.CursorLocation = 3
'** データ問い合わせ
  sql = "select * from test;"
  cn.Execute sql
  Label.Caption = sql          ←ここで表示させようとしたのですが…。
'** ODBC 接続解除
  cn.Close
  End Sub

−−−−−−−−−−−
これじゃSQL文が表示されるだけだろうと、思ったのですが案の定でした。

cn.Executeのように何か
実行結果を表示するようなものがあるのでしょうか?

また、初歩的な質問で申し訳ありません。

編集 削除
魔界の仮面弁士  2008-01-10 21:00:52  No: 138591  IP: 192.*.*.*

「Recordset オブジェクト」について調べてみると、道が開けるかと。

編集 削除
貴公子@通りすがり  2008-01-11 08:55:39  No: 138592  IP: 192.*.*.*

sql = "select * from test;"
  Set rst = cn.Execute(sql, , adCmdText)
  Label.Caption = rst

これでだめ?

編集 削除
ぽしゃった  2008-01-11 15:26:09  No: 138593  IP: 192.*.*.*

ご返答ありがとうございます。
早速試してみましたが、

−−−−−−−−−−−−−−−−−−−−−−−−− 
Private Sub Command1_click()
  Dim cn As Variant
  Dim sql As String
  Dim rst As New ADODB.Recordset
  
'** ODBC 接続
  Set cn = CreateObject("ADODB.Connection")
  cn.Open "dsn=***;uid=***;pwd=***"
  cn.CursorLocation = 3
'** データ問い合わせ
  sql = "select * from test;"
  Set rst = cn.Execute(sql, , adCmdText)
  Label.Caption = rst                        ←この行です。
'** ODBC 接続解除
  cn.Close
  End Sub
−−−−−−−−−−−−−−−−−−−−−−−−−
下から、四行目の「Caption」が黄色くなり「型が一致しません」と出てしまいます。
他のサイトを参考に(上から)4行目に型の指定を入れたのですが記述に間違いがあったのでしょうか?

編集 削除
ぽしゃた  2008-01-17 17:00:11  No: 138594  IP: 192.*.*.*

解決しました。
一応成功した記述を。

 Private Sub Command1_click()
  Dim cn As Variant
  Dim rst As ADODB.Recordset  
  Dim a As String
'** ODBC 接続
  Set cn = CreateObject("ADODB.Connection")
  cn.Open "dsn=mysqldb;uid=root;pwd=MyPassWorD"
  cn.CursorLocation = 3
'** データ問い合わせ
  Set rst = New ADODB.Recordset
  rst.Open "SELECT * From test", cn
Do Until rst.EOF
 a = rst!number & rst!Name & rst!point
 rst.MoveNext
 List1.AddItem a
Loop
'** ODBC 接続解除
  cn.Close
  End Sub

編集 削除
ぽしゃた  2008-01-17 17:00:14  No: 138595  IP: 192.*.*.*

解決しました。
一応成功した記述を。

 Private Sub Command1_click()
  Dim cn As Variant
  Dim rst As ADODB.Recordset  
  Dim a As String
'** ODBC 接続
  Set cn = CreateObject("ADODB.Connection")
  cn.Open "dsn=mysqldb;uid=root;pwd=MyPassWorD"
  cn.CursorLocation = 3
'** データ問い合わせ
  Set rst = New ADODB.Recordset
  rst.Open "SELECT * From test", cn
Do Until rst.EOF
 a = rst!number & rst!Name & rst!point
 rst.MoveNext
 List1.AddItem a
Loop
'** ODBC 接続解除
  cn.Close
  End Sub

編集 削除