如果没有更新行,如何返回更新的行或无?

时间:2014-12-27 21:15:14

标签: scala slick

我正在尝试返回我在Slick 2.1.0中更新的行,但我不确定如何执行此操作。默认返回类型只是一个整数。有没有办法返回实际更新的行?

我想要一个这种签名类型的方法:

  /**
   * @param address the address to be updated in a database
   * @return the future value of the address if it exists, else none
   */
  override def update(address: Future[Address]): Future[Option[Address]] = {
    val updatedRow = for (
      addr <- address;
      q = addresses.filter(_.address === addr.address)
    ) yield addresses returning queryToUpdateInvoker(q).update(addr)

    updatedRow
  }

如果找到该行,则返回新更新的行,如果未找到,则返回none。我尝试做一些类似于插入行的操作,然后将其返回无效。

0 个答案:

没有答案