捕获返回值从ADO记录集
问题描述:
我执行这样从Excel中的存储过程:捕获返回值从ADO记录集
Sub SPROCmain()
Dim conn As ADODB.Connection
Dim rs As ADODB.Recordset
Set conn = New ADODB.Connection
Set rs = New ADODB.Recordset
conn.Open connString()
conn.CommandTimeout = 0
rs.ActiveConnection = conn
rs.Open("EXECUTE [datamart].[dbo].[Pop_Main]")
MsgBox t
Set conn = Nothing
Set rs = Nothing
End Sub
它工作得很好,转储数据到某些表,以备后用。有没有一种方法可以让我从这里获取存储过程的返回值,还是我必须去设置新的ADODB.Command
的路线?
答
突然这一切是有道理的......
Sub SPROCmain()
Dim conn As ADODB.Connection
Dim rs As ADODB.Recordset
Set conn = New ADODB.Connection
Set rs = New ADODB.Recordset
conn.Open connString()
conn.CommandTimeout = 0
rs.ActiveConnection = conn
rs.Open ("DECLARE @return_value int " _
& "EXEC @return_value = [datamart].[dbo].[Pop_Main] " _
& "SELECT 'Return Value' = @return_value")
MsgBox rs.GetString
Set conn = Nothing
Set rs = Nothing
End Sub