Set objPara = Nothing Set objCm = Nothing Set objCn = Nothing End Sub'---------sp_Test的建立----------'CREATE PROCEDURE [dbo].[sp_Test] '@f2 BigInt OUT ' AS 'set nocount on 'declare @f3 BigInt 'SELECT @f2 = ( ' SELECT f2 FROM t1 WHERE f1 = 1 ' ) 'SELECT @f3 = ( ' SELECT f3 FROM t1 WHERE f1 = 1 ' ) 'return @f3 'GO
'先引用ADO对象库
Dim objCn As New ADODB.Connection
Dim objCm As New ADODB.Command
Dim objPara As New ADODB.Parameter
With objPara
.Name = "@f2"
.Type = adBigInt
.Direction = adParamOutput
End With
objCn.Open "Provider=SQLOLEDB.1;PassWord=yhy;UID=sa;Initial Catalog=test;Data Source=数据源"
With objCm
.ActiveConnection = objCn
.CommandType = adCmdStoredProc
'返回值
.Parameters.Append .CreateParameter("@f3", adBigInt, adParamReturnValue)
'输出参数
.Parameters.Append objPara
.CommandText = "sp_Test"
.Execute
MsgBox .Parameters("@f3").Value
End With
'输出参数的值
MsgBox objPara.Value
Set objPara = Nothing
Set objCm = Nothing
Set objCn = Nothing
End Sub'---------sp_Test的建立----------'CREATE PROCEDURE [dbo].[sp_Test]
'@f2 BigInt OUT
' AS
'set nocount on
'declare @f3 BigInt
'SELECT @f2 = (
' SELECT f2 FROM t1 WHERE f1 = 1
' )
'SELECT @f3 = (
' SELECT f3 FROM t1 WHERE f1 = 1
' )
'return @f3
'GO