我使用的是Anorm,我想知道当我只删除一行时最好使用哪种解决方案(例如,我知道字段eventId
是唯一的)。
SQL("DELETE FROM events WHERE eventId = {eventId}")
.on('eventId -> eventId)
.executeUpdate()
并测试返回值是否为1 ,或者将此版本与execute()
一起使用:
SQL("DELETE FROM events WHERE eventId = {eventId}")
.on('eventId -> eventId)
.execute()
并测试返回的值是否为真?
有什么不同吗?
答案 0 :(得分:6)
来自.execute
的布尔值并不表示它是否成功,但是它是否已执行查询或更新。
使用.executeUpdate
,结果是更新/删除的行数。如果目标是检查某些内容是否因执行而被更改,则.executeUpdate
非常有用。