Date: Wed, 30 Jun 2004 19:39:28 +0900
 From: "Akira Horikawa" <who@example.ne.jp>
 
 
堀川です、今晩は
-----Original Message-----
From: who@sub.example.jp [mailto:who@sub.example.jp] 
Sent: Wednesday, June 30, 2004 12:02 PM
To: who@example.ne.jp
Subject: [ml-msde-beg:01255] ADO プログラミングについて
>Set parm = .CreateParameter(, adVarWChar, adParamInput, 50, Forms(cFormName_M)![kanashimei]) 
パラメータの名前を省略していますが、一般的には、ストアドプロシージャの
パラメータ名をそのまま与えるのがよいと思います
あるいは、Parameters コレクションの Refresh メソッドを呼び出した後に
個々のパラメータの調整をすればよいと思います
例えば
  CREATE PROCEDURE MyProc
        @p1 int , 
        @p2 varchar(10) ,
        @p3 smallint
AS
       RAISERROR ( 'p1=%d  p2=%s  p3=%d ' , 0 , 1 , @p1 , @p2 , @p3 ) with log
GO
のようなストアドがあるときに、
Sub test()
  Dim objConn As ADODB.Connection
  Dim objComm As ADODB.Command
  Dim conStr
   
  Set objConn = New ADODB.Connection
  conStr = "Provider=sqloledb;Data Source=(local);Initial Catalog=Sample; User Id=sa; Password=?;"
  objConn.Open conStr
  Set objComm = New ADODB.Command
  Set objComm.ActiveConnection = objConn
   
  objComm.CommandText = "MyProc"
  objComm.CommandType = adCmdStoredProc
  objComm.Parameters.Refresh
  
  objComm.Parameters("@p1").Value = 10
  objComm.Parameters("@p2").Value = "Test"
  objComm.Parameters("@p3").Value = 1000
  objComm.Execute
   Set objComm = Nothing
   objConn.Close
   Set objConn = Nothing
End Sub
のように、実行できます
------------------------------------
(株)日本技術ソフト開発
        堀川 明  (Akira Horikawa)
    06月30日(水曜日) 19時38分記
        mailto:who@example.ne.jp
        http://www.horikawa.ne.jp/msde/
  
| [MSDE/SQLServerに関して、今、どんなことにお困りですか?] |  
| よろしければお困りの内容を、電子メールで教えて下さい。 |  
| 
質問を電子メールで作成する
 |  
 
  [ウィンドを閉じる][MSDE/SQLServer FAQ ][MSDE / MSDE2000 技術サポート情報一覧] 
                                 
                        |