scala – 如何在Slick 3.0.0中使用StaticQuery?
发布时间:2020-12-16 08:56:47 所属栏目:安全 来源:网络整理
导读:在Slick 2.1中,我有以下代码从文件执行sql-query: def fetchResult[T](sql: String)(implicit getResult: GetResult[T]): List[T] = { val query = Q.queryNA[T](sql) try { Database.forDataSource(DB.getDataSource()) .withSession { implicit session =
在Slick 2.1中,我有以下代码从文件执行sql-query:
def fetchResult[T](sql: String)(implicit getResult: GetResult[T]): List[T] = { val query = Q.queryNA[T](sql) try { Database.forDataSource(DB.getDataSource()) .withSession { implicit session => query.list } } catch { case e: Throwable => throw new RunSqlException(s"Query $name execution error",e) } } 在Slick 3.0.0中,您使用dbConfig.db.run方法来执行DBIOAction并获得结果的未来.但我找不到将Q.queryNA(即StaticQuery [Unit,R])的结果转换为DBIOAction的方法.这样的方式存在吗? 我现在结束了不赞成的电话.帮助我变得更好! def fetchResult[T](sql: String)(implicit getResult: GetResult[T]): Future[List[T]] = Future { val query = Q.queryNA[T](sql) try { this.dbConfig.db.withSession { implicit session => query.list } } catch { case e: Throwable => throw new RunSqlException(s"Query $name execution error",e) } } 解决方法
只有我设法找到的解决方案有点hackish:
import slick.driver.HsqldbDriver.api._ def fetchResult[T](sql: String) = { database.run(sqlu"""#$sql""") } (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- shell – 我们如何通过使用isatty函数来区分对程序的输入是
- unix – 可以假定UDP数据包中的数据在应用程序级别是正确的
- twitter-bootstrap – 是否有必要在Bootstrap 3中添加col-m
- SpreadJS 在 Angular2 中支持绑定哪些属性?
- 如何在Vim中为Jquery脚本修复缩进?
- 什么是 Twitter Bootstrap?
- Angular 2 – 导入外部传单打字稿库
- 设计一个美好的服务器--MINA、CXF、Mule、JBoss/Geronimo
- ESFramework介绍之(8)-- 客户端插件IPassiveAddin
- 巧妙地处理Scala中的Option [T]