在 VB6 中调用具有单个输入参数的 SQL 存储过程
Calling a SQL Stores Procedure with single input parameter in VB6
我试图在 VB6 中调用具有单个输入参数的 SQL 存储过程。基本上,VB6 应用程序会提交一个供应商编号,并检查该供应商编号的发票状态,如果状态 = A,则它 returns 为假值,其他任何 returns 为真值。我的存储过程在 SQL 中运行,但在我的应用程序中调用它时无法运行。
这是我目前的情况。
这是我的按钮点击:
Dim cmd As ADODB.Command
Public dc As New DataConnection
Private sub btnCheckStatus_Click()
Set cmd = New ADODB.Command
cmd.ActiveConnection = dc
cmd.CommandType = adCmdStoredProc
cmd.CommandText = "[dbo].[CheckStatus]"
cmd.Parameters.Append cmd.CreateParameter("@VendorNumber", adInteger, adParamInput, "6", VendorNumber)
cmd.execute
BalanceStatus = cmd(result)
Set cmd.ActiveConnection = Nothing
我似乎无法从存储过程中获取结果,我试图将其设置为一个变量但它不起作用,它给我一个类型不匹配错误
必须设置记录集来保存所有信息并将其分配给我的状态变量。
Dim cmd As ADODB.Command
Dim rs As New ADODB.Recordset
Public dc As New DataConnection
Set cmd = New ADODB.Command
cmd.ActiveConnection = Connection.dc.conn
cmd.CommandType = adCmdStoredProc
cmd.CommandText = "[dbo].[CheckStatus]"
cmd.Parameters.Append cmd.CreateParameter("VendorNumber", adInteger, adParamInput,6, VendorNumber)
Set rs = cmd.execute
If Not rs.EOF Then
BalanceStatus = rs.Fields(0)
End If
我试图在 VB6 中调用具有单个输入参数的 SQL 存储过程。基本上,VB6 应用程序会提交一个供应商编号,并检查该供应商编号的发票状态,如果状态 = A,则它 returns 为假值,其他任何 returns 为真值。我的存储过程在 SQL 中运行,但在我的应用程序中调用它时无法运行。
这是我目前的情况。
这是我的按钮点击:
Dim cmd As ADODB.Command
Public dc As New DataConnection
Private sub btnCheckStatus_Click()
Set cmd = New ADODB.Command
cmd.ActiveConnection = dc
cmd.CommandType = adCmdStoredProc
cmd.CommandText = "[dbo].[CheckStatus]"
cmd.Parameters.Append cmd.CreateParameter("@VendorNumber", adInteger, adParamInput, "6", VendorNumber)
cmd.execute
BalanceStatus = cmd(result)
Set cmd.ActiveConnection = Nothing
我似乎无法从存储过程中获取结果,我试图将其设置为一个变量但它不起作用,它给我一个类型不匹配错误
必须设置记录集来保存所有信息并将其分配给我的状态变量。
Dim cmd As ADODB.Command
Dim rs As New ADODB.Recordset
Public dc As New DataConnection
Set cmd = New ADODB.Command
cmd.ActiveConnection = Connection.dc.conn
cmd.CommandType = adCmdStoredProc
cmd.CommandText = "[dbo].[CheckStatus]"
cmd.Parameters.Append cmd.CreateParameter("VendorNumber", adInteger, adParamInput,6, VendorNumber)
Set rs = cmd.execute
If Not rs.EOF Then
BalanceStatus = rs.Fields(0)
End If