当尝试使用 scalaquery 检索 SQLite 数据库中文本列的长度时,它会生成错误的 SQL。我明白了:
SELECT "t1"."title" FROM "GoodPages" "t1" WHERE ({fn length("t1"."title")} > 65)
当查询真的应该是
SELECT "t1"."title" FROM "GoodPages" "t1" WHERE length("t1"."title") > 65
for
我用于获取此查询的comp 是
for (f <- Foo if f.title.length > 65) yield f.title
我拥有的表定义是
object Foo extends Table[(Int,String)]("Foo") {
def id = column[Int]("id")
def title = column[String]("title")
def * = id ~ title
}
似乎 scalaquery 只是生成了错误的length()
函数,但我找不到代码中发生这种情况的位置,也没有在 Internet 上找到任何关于此的内容。