#447 ストアドプロシージャの呼び出し例(SELECT系、パラメータあり) VBA

Accessプロジェクト(.ADP)などにおいて、VBAを使ってストアドプロシージャを呼び出す例です。

ここでは、SELECT文によってレコードを返すストアドプロシージャ、かつパラメータを持ったストアドプロシージャの呼び出しパターンのひとつを紹介します(他にもいろいろなオブジェクトを使ったコーディング方法があり、あくまでもその中の1つです)。


Dim cnn As ADODB.Connection
Dim cmd As ADODB.Command
Dim rst As ADODB.Recordset

Set cnn = CurrentProject.Connection
Set cmd = New ADODB.Command
With cmd
  .ActiveConnection = cnn
  .CommandText = "ストアドプロシージャ名"
  .CommandType = adCmdStoredProc
  .Parameters.Refresh
  .Parameters("@パラメータ名1") = パラメータ値1
  .Parameters("@パラメータ名2") = パラメータ値2
  ・・・・・・ (パラメータの数だけパラメータ代入を列挙) ・・・・・・

  Set rst = cmd.Execute
End With
Set cmd = Nothing

(以降、rstオブジェクト変数のメソッドなどによってレコードを操作します)



  • 「Set rst = cmd.Execute」の代わりに次のような書き方もあります。
    rst.Open cmd, , adOpenStatic, adLockReadOnly, adCmdText
| Index | Prev | Next |

この情報は参考になりましたか?、問題は解決しましたか?、もしまだなら......
T'sWareのワンポイトテクニカルアドバイスをご利用ください。3000円/件〜でご支援します。
スタンドアロンからSQL Server対応まで、オーダーメイドのシステムを短納期・安価でお届けします
 

Copyright © T'sWare All rights reserved