通过 stmt.executeUpdate 更新 access 数据库中的整数
Posted
技术标签:
【中文标题】通过 stmt.executeUpdate 更新 access 数据库中的整数【英文标题】:Update integer in access database through stmt.executeUpdate 【发布时间】:2019-03-13 11:37:22 【问题描述】:有人可以帮我格式化我的 stmt.executeUpdate 语句。 下面是我用来将“动物”的可用性从真设置为假的基本语句。(布尔)
stmt.executeUpdate("UPDATE Animals SET Availability = 'False' WHERE AnimalID = '" + animalId + "'");
但想知道如何格式化它,以便通过获取“产品”的库存水平并减去客户所下订单的数量来更新整数。(整数)
stmt.executeUpdate("UPDATE Animals SET Availability = 'stocklevel - quantity' WHERE ProductID = '" + productId + "'");
【问题讨论】:
无关,但是:请学会正确使用PreparedStatement
通常不需要也不建议保存聚合计算。需要时计算。查看allenbrowne.com/AppInventory.html。可用性如何在一个 UPDATE 中取一个布尔值,然后在另一个 UPDATE 中取一个数量?
道歉。我的意思是这个。 stmt.executeUpdate("UPDATE Products SET StockLevel= 'stocklevel - quantity' WHERE ProductID = '" + productId + "'");
【参考方案1】:
通过用单引号括起新值,您的代码当前正尝试将字段的值设置为文字字符串:stocklevel - quantity
。
假设stocklevel
和quantity
也是表Animals
中的字段,只需删除值周围的这些引号,即:
stmt.executeUpdate("UPDATE Animals SET Availability = stocklevel - quantity WHERE ProductID = '" + productId + "'");
【讨论】:
以上是关于通过 stmt.executeUpdate 更新 access 数据库中的整数的主要内容,如果未能解决你的问题,请参考以下文章