【问题标题】:How to get max_allocated_packets from JDBC connection from a Slick DB connection to MySQL如何从 Slick DB 连接到 MySQL 的 JDBC 连接中获取 max_allocated_pa​​ckets
【发布时间】:2021-06-23 16:30:18
【问题描述】:

有没有办法通过 Scala 和 Slick 数据库查询和访问库(或使用其他技巧 - 我敢说模拟?)从 Slick 风格的 DB 连接到 MySQL 的 JDBC 读取连接属性中获取max_allocated_packets?

正如我所怀疑的,代码在更深层次上进行了几个触摸类型的操作,然后填充了这个连接属性。

例如:一旦在com.mysql.cj.jdbc.ConnectionImpl 中建立连接...使用带有 Slick 库的 Scala...max_allocated_packets 的 JDBC 连接属性的值在对象内(在 IntelliJ 中调试)。如上所述,如何提取此值或在更高级别的代码中获取它?

当然我可以直接查询数据库来获取那个值,但是我希望我可以在设置阶段之后提取这个属性。

【问题讨论】:

    标签: mysql scala jdbc slick


    【解决方案1】:

    如果该值在连接上公开可用,您可以尝试使用SimpleDBIO 操作来访问 JDBC 级别的值。

    见:https://scala-slick.org/doc/3.2.0/dbio.html#jdbc-interoperability

    格式如下:

    val getMaxPacketAction = SimpleDBIO[Int] { database => 
      // make use of database.connection here 
    }
    

    但是,这仍然是到数据库进行连接,因此查询所需的值可能会更容易。

    【讨论】:

    • 是的...我试图避免调用数据库。
    猜你喜欢
    • 2016-03-11
    • 1970-01-01
    • 2021-04-09
    • 2012-07-27
    • 2015-03-25
    • 2013-01-19
    • 1970-01-01
    • 2012-11-04
    • 2011-02-17
    相关资源
    最近更新 更多