所以基本上这就是我想做的
insertUpdateRDD2.foreachPartition{ partitionOfRecords =>
val connection = DriverManager.getConnection(jdbcUrl)
val s = connection.createStatement()
for (row <- partitionOfRecords ){
s.execute(s"""INSERT INTO K_CPIREG VALUES ('${row:_*}')""")
}
connection.close()
}
我的Row RDD包含88列,将值一一写入是没有意义的,例如${row(0)} ..,一直写到88。是否有任何动态解决方案?
最佳答案
您可以使用Row.mkString方法。
s.execute(s"""INSERT INTO K_CPIREG VALUES (${row.mkString(",")})""")
关于scala - 如何创建所有 Row 值的逗号分隔字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44085171/