VB2008 で開発をしています。
SQL ServerからDB名の一覧を取得する処理で、うまく行かず悩んでいます。
ロジックは以下の通りです。
Dim cnString As String
Dim Scn As ADODB.Connection
Dim Srs As ADODB.Recordset
Scn = CreateObject("ADODB.Connection")
cnString = "Driver={SQL Server};"
cnString = cnString & "Server=" & strServerNM & ";"
cnString = cnString & "UID=" & strServerUID & "; Pwd=" & strServerPassWD & ";"
Scn.Open(cnString)
Srs = Scn.Execute("SELECT NAME FROM sysdatabases ORDER BY NAME ;")
If Srs.RecordCount = 0 Then
MsgBox("データベースが存在しません。")
Else
Do Until Srs.EOF = True
MsgBox(Srs.Fields("Name").ToString)
Srs.MoveNext()
Loop
End If
実行すると、DB名ではなく、"System._ComObject"という文字が複数回(おそらくDBの数)表示されます。
どなたかおわかりになる方、おられましたらよろしくお願い致します。
お礼
Srs.Fields("Name").Value で取得できました。 そんなことだったんですね。気がつきませんでした。 ありがとうございました!助かりました。 (ADO.NETを使わないというか、 今回たまたま、以前作った実績のあるロジックを 一部変更して使おうとしたんですよ。)