标题: 各位大虾,请问如何用access获取sqlserver存储过程执行成功的返回信息 [打印本页] 作者: yinghua 时间: 2002-7-26 18:35 标题: 各位大虾,请问如何用access获取sqlserver存储过程执行成功的返回信息 各位大虾:
请问如何用access获取sqlserver存储过程执行成功的返回信息,我在access程序中会调用后台的存储过程,但是不知道如何取得存储过程返回的信息。因为我现在需要在后台存储过程执行成功后返回到前台一个成功与否的信息,又不想用向数据表插入纪录的方式。
请各位大虾多多帮忙啊。
Thinks everyone!作者: tomzy 时间: 2002-7-26 19:00
提示: 作者被禁止或删除 内容自动屏蔽作者: yinghua 时间: 2002-7-26 19:22
tomzy:
对不起,我想你可能没有理解我的意思,我时说调用SQLserver的存储过程,而不是在前台执行sql语句。
多谢。 作者: HG 时间: 2002-7-26 19:26
在調用存儲過程後,請刷新參數,讀取刷新後的第一個參數即是,
如果是0或自定義存儲過程返回值則存儲過程執行無誤,非零也非自定義存儲過程返回值則為錯.作者: yinghua 时间: 2002-7-26 19:33
非常感谢,我想能否给我一个例子(前台的),多谢!作者: HG 时间: 2002-7-26 21:13
Public Function qry_emp_subsidy(my_year As Integer, my_month As Integer, my_emp_sn As String) As Currency
Dim com As New ADODB.Command
Dim prm As New ADODB.Parameter
With com
.CommandText = "usp_qry_emp_subsidy"
.CommandType = adCmdStoredProc
.ActiveConnection = CurrentProject.Connection
End With
Set prm = com.CreateParameter(, adSmallInt, adParamInput, , my_year)
com.Parameters.Append prm
Set prm = Nothing
Set prm = com.CreateParameter(, adTinyInt, adParamInput, , my_month)
com.Parameters.Append prm
Set prm = Nothing
Set prm = com.CreateParameter(, adChar, adParamInput, 4, my_emp_sn)
com.Parameters.Append prm
Set prm = Nothing
Set prm = com.CreateParameter(, adCurrency, adParamOutput)
com.Parameters.Append prm
Set prm = Nothing
com.Execute
If IsNull(com.Parameters(3)) Then
qry_emp_subsidy = 0
Else
qry_emp_subsidy = com.Parameters(3)
End If
com.Parameters.Refresh '刷新參數
If com.Parameters(0) <> 0 Then '取得並判斷返回值
MsgBox "error !", vbOKOnly, "err"
Exit Function
End If
Set com = Nothing