py4j.Py4JException: метод setProperty ([класс java .lang.Integer, класс java .lang.Integer]) не существует - PullRequest
1 голос
/ 31 марта 2020

Я получаю сообщение об ошибке при подключении к БД и выполнении запроса. У меня есть строка подключения ниже, и это не дает мне никакой ошибки, но при выполнении запроса выдается ошибка.

Можете ли вы просмотреть и сообщить мне, что не так.

jdbcHostname = "ihost"
jdbcDatabase = "db"
jdbcUsername="user"
jdbcPassword="pwd"
jdbcPort = 3306
jdbcUrl = "jdbc:mysql://{0}:{1}/{2}?user={3}&password={4}".format(jdbcHostname, jdbcPort, jdbcDatabase, jdbcUsername, jdbcPort)

connectionProperties = {
  "user" : jdbcUsername,
  "pwd" : jdbcPassword,
  "ihost":jdbcHostname,
  3306:jdbcPort,
  "db":jdbcDatabase,
  "driver" : "com.mysql.jdbc.Driver"
}
jdbcUrl = "jdbc:mysql://{0}:{1}/{2}".format(jdbcHostname, jdbcPort, jdbcDatabase)

pushdown_query = "select top 10 [id] from [test]"
dfcontest= spark.read.jdbc(url=jdbcUrl, table=pushdown_query, properties=connectionProperties)
display(dfcontest)
...