Databricks中的Spark下推谓词查询不工作



使用Apache Spark连接器用于SQL Server和Azure SQL时,我在下面的代码的最后一行得到以下错误,我使用Apache Spark pushdown predicate。我正试着模仿微软文档中的以下示例。

误差:

com.microsoft.sqlserver.jdbc。SQLServerException:关键字'WHERE'附近语法错误

什么可能是错误的原因,我们如何解决它?

:是使用Spark Dataframe和SQL JDBC将Azure SQL Db的SQL查询结果右转到.csv文件。

server_name = "jdbc:sqlserver://myAzure-ManagedInstance.database.windows.net"
database_name = "myAzureDb"
jdbcUrl = server_name + ";" + "databaseName=" + database_name + ";"
connectionProperties = {
"user" : "mySQLUsername,
"password" : "mySQLPassword,
"driver" : "com.microsoft.sqlserver.jdbc.SQLServerDriver"
}
pushdown_query = "(SELECT FirstName, LastName FROM Customers)"
df = spark.read.jdbc(url=jdbcUrl, table=pushdown_query, properties=connectionProperties)

你的代码中一定有输入错误。

connectionProperties中,需要给mySQLUsernamemySQLPassword加双引号

connectionProperties = {
"user" : "mySQLUsername",
"password" : "mySQLPassword",
"driver" : "com.microsoft.sqlserver.jdbc.SQLServerDriver"
}

相关内容

  • 没有找到相关文章

最新更新