运行select的scala代码执行速度比在MySQL工作台上执行相同的查询慢一个数量级。与MySQL工作台中的相同查询相比,我的调试打印connection made和query returned之间的时间非常长,所有其他步骤都很快。当然,我在这两种情况下都使用相同的数据库用户。
import java.sql.{Connection,DriverManager,ResultSet}
object JavaSQL extends App {
val driver = "com.mysql.jdbc.Driver"
val url = ..
val user = ..
val password = ..
println("loading driver")
Class.forName(driver) // loads the driver
println("driver loaded")
val connection = DriverManager.getConnection(url, user, password)
println("connection made")
val rs: ResultSet = connection.createStatement.executeQuery("SELECT * from Foo")
println("query returned")
connection.close
}build.sbt:
lazy val project = (project in file("."))
.settings(
scalaVersion := "2.11.7",
libraryDependencies ++= Seq("mysql" % "mysql-connector-java" % "5.1.38")
)我应该怎么做才能让它达到标准?它与在mysql的命令行中运行相同的查询一样慢。工作台必须使用一些特殊的标志。
我使用JDBC/SQL抽象已经有一段时间了,现在又回到了java.sql,所以请温和一点。
发布于 2016-03-09 04:15:07
MySQL工作台使用1000行的默认限制。就这样。
https://stackoverflow.com/questions/35875914
复制相似问题