簡體   English   中英

從 Azure Databricks 中刪除 SQL 數據庫中的表

[英]Drop Table in SQL Database from Azure Databricks

我需要使用 Azure Databricks (PySpark) 在 SQL 數據庫中刪除一個表。

我被要求不要使用 PySpark 之外的任何東西來實現這一點。 這可以通過使用 DataFrameWriter 來完成嗎? 下面的代碼(內部我相信)首先刪除表,然后創建一個同名的新表,然后將 dataframe 數據寫入表中。

MyDataFrame.write.format("jdbc").option("url", "jdbc:sqlserver://<SQLServerHost>.windows.net:1433").option("database", 'MyDBName').option("dbtable", 'MyTableName').option("user", "MyUsername").option("password", "MyPassword").mode('overwrite').save()

我想簡單地完全刪除表。 有沒有代碼可以做同樣的事情?

問候,斯里

df = spark.read.format('jdbc')\
.option("url", "jdbc:sqlserver://MyServerName:MyPort")\
.option("database", 'MyDBName')\
.option("user", "MyUser")\
.option("password", "MyPassword")\
.option('query', 'drop table tablename')

這成功了。

您可以嘗試以下方法。

#Setup the JDBC connection. 
jdbcUrl = "jdbc:mysql://{0}:{1}/{2}".format(jdbcHostname, jdbcPort, jdbcDatabase)
connectionProperties = {
      "user" : jdbcUsername,
      "password" : jdbcPassword,
      "driver" : "com.mysql.jdbc.Driver"
    }

#Create a query to drop the required table
pushdown_query = "DROP table tablename"

#run the query
df = spark.read.jdbc(url=jdbcUrl, table=pushdown_query, properties=connectionProperties)
display(df)

我希望這有幫助。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM