问题
I work with an Inventory System. I have an error on my code, it says
No value given for one or more required parameters.
and the error was thrown to cmd.ExecuteNonQuery()
. What does it mean? can someone help me? By the way this code is for deducting Item Quantity on Database. Sorry for my bad English.
con.Open()
Dim sqlQry As String = "UPDATE [tbl_Stocks]
SET [Quantity] = [Quantity] - @QU
WHERE Products='" & lbPro.Text & "'"
Using cmd As New OleDbCommand(sqlQry, con)
cmd.Parameters.AddWithValue("@QU", lbQuan.Text)
cmd.ExecuteNonQuery()
con.Close()
MsgBox("Save Successfully!")
End Using
回答1:
I don't see any flaw. Try this substitute(a little tweak sending both inputs via parameter)
con.Open()
Dim sqlQry As String = "UPDATE [tbl_Stocks] SET [Quantity] = [Quantity] - @QU " &
"WHERE Products=@prod"
Using cmd As New OleDbCommand(sqlQry, con)
cmd.Parameters.AddWithValue("@QU", lbQuan.Text)
cmd.Parameters.AddWithValue("@prod", lbPro.Text)
cmd.ExecuteNonQuery()
con.Close()
MsgBox("Save Successfully!")
End Using
来源:https://stackoverflow.com/questions/38738490/exception-no-value-given-for-one-or-more-required-parameters-in-vb-net-ms-acc