过程带返回参数output,然后用vb读这个返回值

解决方案 »

  1.   

    使用ado.command
    dim cmd as adodb.command
      Set cmd = New ADODB.Command
       Set cmd.ActiveConnection = cnn
          cmd.Parameters.Append cmd.CreateParameter("nErrorNum", adInteger, adParamOutput)
      cmd.CommandText = SQLString'你的存储过程名称
      cmd.CommandType = adCmdStoredProc
      cmd.Execute
    执行以后可以通过cmd.Parameters(("nErrorNum").Value得到返回的
    @@Error
      

  2.   

    对,用command对象,具体请看微软的帮助
      

  3.   

    declare @Rec int
    set @Rec=0
    ...
    set @Rec=@@error
    IF @Rec <>0  --如果出错,返回错误代码
       goto TheEnd
    ...
      CLOSE my_cursor 
      DEALLOCATE my_cursor 
    TheEnd:
    RETURN @Rec
    go
    VB:
    set rs=con.execute("declare @Rec int exec @Rec=ProcName ... select @Rec as Rec ")
    if rs!Rec=0 then
       debug.print "成功"
    else
       debug.print "错误号:" & rs!Rec
    end if
      

  4.   

    Private Function RESET_PASSWORD() As Integer
    Dim cmd As New ADODB.Command
    Dim par0 As New ADODB.Parameter '返回值
    Dim par1 As New ADODB.Parameter ' 帐号
    Dim par2 As New ADODB.Parameter '密码With cmd
    .ActiveConnection = CnnStr
    .CommandType = adCmdStoredProc
    .CommandText = "PR_RESET_PASSWORD"
    .ActiveConnection.CursorLocation = adUseClient
    par0.Direction = adParamReturnValue '返回值
    par0.Type = adInteger
    par0.Size = 0
    .Parameters.Append par0par1.Direction = adParamInput '帐号
    par1.Type = adChar
    par1.Size = 18
    par1.Value = Acc
    .Parameters.Append par1par2.Direction = adParamInput '新密码
    par2.Type = adChar
    par2.Size = 20
    par2.Value = NewPassWord.Text '密码
    .Parameters.Append par2.Execute
    End With
    VERIFY_USER_QUERY = par0.Value
    cmd = Nothing
    End Function
      

  5.   

    存储过程的第一个参数设为adParamReturnValue 就是SQL存储过程中return的返回值