0

我正在尝试使用具有参数的 ODBC 执行存储过程,但每次执行时都会得到以下信息:

错误 [42000] [Microsoft][ODBC SQL Server Driver][SQL Server] 过程或函数“aaPRO_CloseCall”需要参数“@FaultID”,但未提供该参数。

我的代码是:

Dim I As Integer = Convert.ToInt32(LogIDTextBox.Text)
Dim ConnString As String = "Dsn=Test"
Dim Conn As Odbc.OdbcConnection = New Odbc.OdbcConnection(ConnString)
Dim cmd As New Odbc.OdbcCommand("aaPRO_closecall", Conn)
cmd.CommandType = CommandType.StoredProcedure
cmd.Parameters.AddWithValue("@FaultID", I)
Conn.Open()
cmd.ExecuteNonQuery()
Conn.Close()

我是 Visual Studio 的新手,我看不出我做错了什么。如果有人可以提供帮助,我将不胜感激。

4

1 回答 1

1

这就是我最后所做的

         'Create the ODBC connection
        Dim Conn As Odbc.OdbcConnection = New Odbc.OdbcConnection(ConnString)
        Conn.Open()

        'Add the call to the stored procedure including the connection
        Dim cmd As New Odbc.OdbcCommand("{ CALL aaPRO_closecall(?) }", Conn)
        cmd.CommandType = CommandType.StoredProcedure

        'add the parameter to the stored procedure
        Dim MyParm As OdbcParameter = cmd.Parameters.Add("@FaultID", OdbcType.Int)
        MyParm.Value = FL

        'Execute the procedure
        cmd.ExecuteNonQuery()

        'clean up after
        Conn.Close()
        Conn.Dispose()

谢谢你的帮助。

于 2012-07-18T18:46:23.140 回答