使用Slick for postgres增加列值

时间:2016-01-20 23:20:36

标签: postgresql slick

我需要根据一些过滤器为postgres表中的记录添加1到列值。假设我有两个字段idcount,我想将计数值增加1。

到目前为止我已经

MyTable.filter(_.id === someId).map(_.count).update(??)

不确定如何使用update来执行此操作。有什么建议吗?

1 个答案:

答案 0 :(得分:6)

目前,Slick不支持此功能 - https://github.com/slick/slick/issues/497。你可以:

  1. 使用纯SQL查询;或
  2. 检索当前"计数"值在单独的查询中,递增,然后执行更新,使用transactionally修饰符强制使用一个事务。但是,根据数据库中事务隔离的级别,使用事务可能不足以避免竞争条件。