【问题标题】:Scala Slick: MTable.getTables return empty vector/listScala Slick:MTable.getTables 返回空向量/列表
【发布时间】:2018-05-24 18:37:44
【问题描述】:

Slick 在 DML 查询中返回结果,在执行表创建操作时抛出异常,但 MTable.getTables 返回空向量/列表。我正在使用 MySQL 作为 SQL 解决方案。

  println(Await.result(db.run(MTable.getTables), Duration.Inf))

在控制台中打印Vector()

【问题讨论】:

    标签: mysql scala slick


    【解决方案1】:

    老实说有同样的问题,没有通过大量的帖子和想法,什么可能是错误的,没有任何工作,不想浪费时间在它上面所以简单的方法就是使用 sql 之类的东西直接:

    db.run(sql"""show tables""".as[String]).onComplete({
      case scala.util.Success(value) => value.foreach(println)})
    

    这将返回如下内容: 城市 国家 国家语言 我相信你可以从那里弄清楚如何使用它。

    p.s 抱歉代码示例格式不佳

    【讨论】:

    • 请将此添加为评论。
    【解决方案2】:

    我第一种情况的问题是无效的表结构。

    我第二种情况的问题是无效的写权限。

    如何知道查询失败背后的确切问题:

    这样做:

      val tables = List(Emails.emails)
      val setup = DBIO.sequence(
        tables.map(_.schema.create.asTry)
      )
    
      Await.result(db.run(setup).map(a => {
        println("/****\n\n\n\n\n\n\n\n\n\n\n\n\n")
        println(a)
        println("\n\n\n\n\n\n\n\n\n\n\n\n\n*************/")
      }), Duration.Inf)
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2019-02-04
      • 2020-06-12
      • 2015-02-01
      • 2014-02-28
      • 1970-01-01
      • 2020-02-28
      • 1970-01-01
      • 2019-08-18
      相关资源
      最近更新 更多