Загрузить таблицу MS Access как DataFrame в Spark - PullRequest
0 голосов
/ 15 октября 2018

Я пытаюсь загрузить таблицу из базы данных MS Access.

Я делаю это так:

val table = sparkSession.read
    .format("jdbc")
    .option("url", "jdbc:ucanaccess://D:/User/test.mdf;memory=false")
    .option("dbtable", "my_table")
    .load()
    .toDF

Я добавил эти зависимости

  • ucanaccess-4.0.1,
  • hsqldb-2.4.1,
  • jackcess-2.1.6,
  • commons-lang3-3.8.1
  • commons-logging-1.2.

Я получаю это исключение:

Caused by: net.ucanaccess.jdbc.UcanaccessSQLException: UCAExc:::4.0.1 incompatible data type in conversion: from SQL type CHARACTER to java.lang.Integer, value: Maj_ID
at net.ucanaccess.jdbc.UcanaccessResultSet.getInt(UcanaccessResultSet.java:447)
at org.apache.spark.sql.execution.datasources.jdbc.JdbcUtils$$anonfun$org$apache$spark$sql$execution$datasources$jdbc$JdbcUtils$$makeGetter$6.apply(JdbcUtils.scala:411)
at org.apache.spark.sql.execution.datasources.jdbc.JdbcUtils$$anonfun$org$apache$spark$sql$execution$datasources$jdbc$JdbcUtils$$makeGetter$6.apply(JdbcUtils.scala:410)
at org.apache.spark.sql.execution.datasources.jdbc.JdbcUtils$$anon$1.getNext(JdbcUtils.scala:347)
at org.apache.spark.sql.execution.datasources.jdbc.JdbcUtils$$anon$1.getNext(JdbcUtils.scala:329)
at org.apache.spark.util.NextIterator.hasNext(NextIterator.scala:73)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...