メイン画像

VBScript - データベースを検索する | Connection.Execute

VBScript - データベースを検索する | Connection.Execute


ADO (Microsoft ActiveX Data Objects) を使ったデータベース検索の方法を紹介する。

Connection.Execute でデータを検索し、結果を Recordset に格納する方法である。

サンプルスクリプト

次のスクリプトは Oracle サーバーのシステム日時を表示する。

Option Explicit

'データベースに接続する
Dim conn
Set conn = CreateObject("ADODB.Connection")
conn.Open "Provider=OraOLEDB.Oracle;User ID=scott;Password=tiger;Data Source=ORCL;"

'データを検索する
Dim rst
Set rst = conn.Execute("select EMPNO, ENAME from EMP")

'~~~TODO: 検索結果を使った処理を書く~~~
Do While Not rst.EOF
  WScript.Echo rst.Fields("SYSDATE").Value
  rst.MoveNext
Loop

'レコードセットを閉じる
If rst.State <> 0 Then
  rst.Close
End If
Set rst = Nothing

'データベースとの接続を切断する
If conn.State <> 0 Then
  conn.Close
End If
Set conn = Nothing

説明

Recordset.Open としていた部分が conn.Execute になっただけである。
検索結果の利用方法や後始末など、ほかの部分は変わらない。

Set rst = CreateObject("ADODB.Recordset")
rst.Open "select SYSDATE from dual", conn

↓

Set rst = conn.Execute("select SYSDATE from dual")

 

conn.Execute を使う場合、Recordset のプロパティは既定値となり変更できない。
既定値以外を使いたいときは Recordset.Open で検索する。


アカウントを作成 して、もっと沢山の記事を読みませんか?


この記事が気に入ったら ことりと さんを応援しませんか?
メッセージを添えてチップを送ることができます。


この記事にコメントをしてみませんか?


酒とアクアリウムが最近の楽しみ。

おすすめの記事