【问题标题】:SBT, Spark and MS SQL ServerSBT、Spark 和 MS SQL 服务器
【发布时间】:2019-03-07 09:35:18
【问题描述】:

我正在尝试使用从 SQL Server 中提取的数据创建一个 Spark 数据框。

  val jdbcDF = spark.read
  .format("jdbc")
  .option("url", "sqlserver://...")
  .option("dbtable", "table")
  .option("user", "user")
  .option("password", "passwors")
  .load()

我将驱动程序 JAR 放在我的 /lib 文件夹中

build.sbt
lib/
  mssql-jdbc-7.2.1.jre8.jar
project/
src/

然而,我仍然收到以下错误:

Exception in thread "main" java.sql.SQLException: No suitable driver

任何帮助将不胜感激。

【问题讨论】:

  • 谢谢。我实际上设法通过简单地将 com.microsoft.sqlserver" % "mssql-jdbc" % "7.2.1.jre8 添加到依赖项和 .option("driver", "com.microsoft.sqlserver.jdbc.SQLServerDriver ") 到代码中。

标签: sql-server scala apache-spark sbt


【解决方案1】:

您需要将驱动程序路径与 spark-submit 命令一起传递,这样的事情已经解决了我的问题:

spark-submit --driver-class-path C:\postgresql\postgresql\42.2.5\postgresql-42.2.5.jar --class SparkMaven.Postgres.App --master local [*] C:\eclipse-workspace\Postgres\target\Postgres-0.0.1-SNAPSHOT.jar

【讨论】:

    【解决方案2】:

    要结束这个话题,我们可以通过两种方式处理这个问题:

    1. 作为 spark-submit 的一部分传递驱动程序(请参阅 Vivek 的回答)
    2. com.microsoft.sqlserver" % "mssql-jdbc" % "7.2.1.jre8 添加到依赖项并将.option("driver", "com.microsoft.sqlserver.jdbc.SQLServerDriver") 添加到代码中

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-04-01
      • 1970-01-01
      • 2015-10-27
      • 1970-01-01
      • 2019-03-04
      相关资源
      最近更新 更多