Slick 3.0.0执行查询

时间:2015-07-11 16:26:34

标签: scala slick-3.0

我有一个问题,如何以正确的方式使用slick 3.0执行查询

主要想法: 1)准备功能查询 2)执行并获取对象列表

现在我可以这样做

val q = user.filter(_.id > 1)

val res = Await.result(db.run(DBIO.seq(
  q.result.map(println)
)), Duration.Inf)

但在这种情况下我应该在db.run中创建一些var。

你能不能给我一些例子,如何执行光滑的查询并获得列表结果到val?

BR!

2 个答案:

答案 0 :(得分:3)

拨打new Thread(new Runnable() { @Override public void run() { //calculations #1 } }).start(); new Thread(new Runnable() { @Override public void run() { //calculations #2 } }).start(); 会给你一个map(println),这可能不是你想要的。试试这个:

List[Unit]

答案 1 :(得分:0)

你要做的就是添加' .toList'在你的陈述结束时

val q = user.filter(_.id > 1)
val res = Await.result(db.run(DBIO.seq( q.result.map(println))), Duration.Inf).toList