根据Slick 2.0 documentation, 获取表中的行数:
val q1 = coffees.length
// compiles to SQL (simplified):
// select count(1) from "COFFEES"
但事实证明,coffees.length
的类型为Column[Int]
。
如何执行查询并获取值?
答案 0 :(得分:26)
我刚才有同样的问题升级到slick 2.0。我忘记了确切的方法存在的地方,但通用.run
似乎对我有效,即
coffees.length.run
答案 1 :(得分:5)
StaticQuery.queryNA[Int]("select count(*) from \"" + TableName + "\"").first
如果您的表名不是大写,则需要引号。
答案 2 :(得分:1)
尝试 coffees.length.first
应执行并返回Int
对不起,确实,在光滑的1.0中有第一种方法可以做到这一点,在Slick 2.0中他们摆脱了它,转而支持更通用的run
。
执行查询的功能是
coffees.length.run