我正在编写一个商业应用程序作为作业的一部分,并且遇到了一个我以前从未遇到过的问题。
我想知道是否有可能在这个语句中更新字段QuantityonHand的值,而不首先用另一个语句抓取它并将其分配给一个变量。
谷歌没有找到我想要的东西,谢谢!
cmd = New OleDbCommand("UPDATE Inventory SET QuantityOnHand = ? WHERE ProductID = ?", Con)
Prm = New OleDbParameter("QuantityOnHand ", )
cmd.Parameters.Add(Prm)
Prm = New OleDbParameter("ProductID ", "003")
cmd.Parameters.Add(Prm)
cmd.ExecuteNonQuery()
另一个答案很糟糕。您明智地使用了参数,所以只需在SQL中嵌入一个表达式:
UPDATE Inventory SET QuantityOnHand = (QuantityOnHand + ?) WHERE ProductID = ?
传递正值增加,负值减少