首页 > 解决方案 > 如何使用 quill 动态查询批量插入?

问题描述

我正在尝试使用 Quill 动态查询来执行批量插入

在非动态 api 中,我会使用:

db.run(quote {
liftQuery(myCollection).foreach(data => querySchema[MyDBClass]("table").insert(data))
})

我试过对动态查询做同样的事情:

db.run({
liftQuery(myCollection).foreach(data => dynamicQuerySchema[MyDBClass](tableNameVar).insertValue(data))
})

但我收到以下错误:

未找到参数 unquote 的隐含:DynamicInsert[MyDBClass] => A_

我是否正确使用了 API?任何帮助,将不胜感激

标签: cassandrabulkinsertbatch-insertquill.io

解决方案


解决方法是:

val dynamicSchema = context.dynamicQuerySchema[MyDBClass](tableNameVar)

context.transaction {
      myCollection.foreach { p =>
        context.run(dynamicSchema.insertValue(p))
      }
    }

对于没有事务的 cassandra 使用


推荐阅读