Table 在 azure databricks 中不会更新或覆盖其内容。我如何使用 python 代码以编程方式执行此操作?

Table in azure databricks does not update or overwrite its contents. How could I programmatically do it using python code?

在 Azure Databricks 中,table 已经创建,我想通过 运行 每天工作/

覆盖它的内容

我尝试使用 dataframe.write.saveAsTable("table_name") 并创建了 table。在 运行 再次显示后显示错误:"The table has already created"

也尝试过:

dataframe.createOrReplaceTempView("table_name") 但只有数据帧得到更新,而不是 table.

dataframe.write.format("table_name") \
     .mode('overwrite').option("header", "true")

Out[23]: <pyspark.sql.readwriter.DataFrameWriter at 0x7fe13c2f79e8>

但是 table 仍然没有被最近的数据覆盖

听起来您想将新数据帧数据覆盖到具有相同名称的 table。

请尝试使用下面的代码。

  1. 使用 mode(saveMode)saveAsTable 之前的 overwrite 值。

    dataframe.write.mode('overwrite').saveAsTable('table_name')

  2. 使用带参数modesaveAsTable(name, format=None, mode=None, partitionBy=None, **options)

    dataframe.write.saveAsTable('table_name', mode="overwrite")

    dataframe.write.saveAsTable('table_name', None, "overwrite", None)

希望对您有所帮助。