VB程序员博客

VB程序开发

最好用conn.execute实现。
exec   sp_GetID   @RemoteId   =   default,   @cAcc_Id   =   '010 ',   @cVouchType   =   'sfc_optransform ',   @iAmount   =   1,   @iFatherId   =   @P1   output,   @iChildId   =   @P2   output
在sql里,如上可以得到结果,我怎么在VB里执行,并得到@p1,@p2的值吗?

要得到存储过程返回值和输出参数需要用command对象,并且存储过程返回值需要作为command对象的第一个参数。

Dim   adoComm   As   Object
Set   adoComm   =   CreateObject( "ADODB.Command ")
Set   rs2   =   New   ADODB.Recordset

                    Set   cmd   =   New   ADODB.Command

                    cmd.ActiveConnection   =   SQLConn

                    cmd.CommandText   =   "FTYBYDAILY "

                    cmd.CommandType   =   adCmdStoredProc

                    cmd.Parameters( "@s_date ")   =   Format(DTPicker1.Value,   "YYYY-MM-DD ")

                    cmd.Parameters( "@model ")   =   Trim(Text1.Text)
                    Set   rs2   =   cmd.Execute

Set   MSHFlexGrid1.Recordset   =   rs2


标签: , , ,