我正在尝试在 ADW 更新表,但到目前为止我找到的唯一途径是通过 scala,我不太熟悉它,我希望与 PySpark 具有相同的功能。这是 Scala 代码,但我被困在试图翻译它import java.util.Propertiesimport java.sql.DriverManagerval jdbcUsername = "xxxxx"val jdbcPassword = "xxxxx"val driverClass = "com.microsoft.sqlserver.jdbc.SQLServerDriver"val jdbcUrl = s"xxxx"val connectionProperties = new Properties()connectionProperties.put("user", s"${jdbcUsername}")connectionProperties.put("password", s"${jdbcPassword}")connectionProperties.setProperty("Driver", driverClass)val connection = DriverManager.getConnection(jdbcUrl, jdbcUsername, jdbcPassword)val stmt = connection.createStatement()val sql = "delete from table where condition"stmt.execute(sql)connection.close()我认为必须有一种使用 PySpark 在 Azure SQL 上执行命令的通用方法,但我还没有找到。
1 回答
偶然的你
TA贡献1841条经验 获得超3个赞
听起来你想直接对Azure Databricks的Python中的Azure SQL数据库表进行删除操作,但我试图意识到它失败了,因为没有办法为pyodbc
和安装linux odbc驱动程序pymssql
。
这是有关我的测试的一些屏幕截图。
图 1. 成功安装pymssql
,pypyodbc
在集群上,但失败pyodbc
图 2. 尝试连接我的 Azure SQL 数据库时遇到有关缺少 linux odbc 驱动程序的问题
所以除了使用官方教程介绍的Scala/Java之外Use HDInsight Spark cluster to read and write data to Azure SQL database
,使用Python的唯一变通方法是调用一个webhook url来实现其他Azure服务的功能,比如Python中的Azure Function。
添加回答
举报
0/150
提交
取消