Apache spark Spark overwrite删除db2中已有表的特权
我使用spark集群将拼花文件移动到DB2表中。这些DB2表是已定义和预制的,但为空。它还被授予一些用户的特权。但是,如果我在spark中使用此代码:Apache spark Spark overwrite删除db2中已有表的特权,apache-spark,db2,Apache Spark,Db2,我使用spark集群将拼花文件移动到DB2表中。这些DB2表是已定义和预制的,但为空。它还被授予一些用户的特权。但是,如果我在spark中使用此代码: ds.get .coalesce(1) .write .mode(SaveMode.Overwrite) .jdbc(fullJdbcUrl, tableName, props) 要移动拼花地板数据,它会删除授权状态(在SYSIBMADM中),并且似乎会删除并创建一个表,而不是使用已经存在的数据。我不想使用Sav
ds.get
.coalesce(1)
.write
.mode(SaveMode.Overwrite)
.jdbc(fullJdbcUrl, tableName, props)
要移动拼花地板数据,它会删除授权状态(在SYSIBMADM中),并且似乎会删除并创建一个表,而不是使用已经存在的数据。我不想使用SaveMode.Append,因为在某些情况下,其中可能已经有数据。是否有一种方法可以删除Spark中表中的行(以便以后可以使用Append),或者强制它使用已经创建的表?谢谢。在2.1中,Spark增加了对
truncate
JDBC DataFrameWriter的支持
ds.get
.coalesce(1)
.write
.mode(SaveMode.Overwrite)
.option("truncate", true)
.jdbc(fullJdbcUrl, tableName, props)
以下是有关的详细信息