Hi I would like to store/save DataFrame in a database table which is created already and want to insert into always without creating table every time. Unfortunately Spark API forces me to create table every time I have seen Spark source code the following calls uses same method beneath if you carefully see code it always expects new table to be created any idea how do I use existing table to save dataframe
dataframe.write().jdbc(); OR dataframe.insertInto() def jdbc(url: String, table: String, connectionProperties: Properties): Unit = { val props = new Properties() extraOptions.foreach { case (key, value) => props.put(key, value) } // connectionProperties should override settings in extraOptions props.putAll(connectionProperties) val conn = JdbcUtils.createConnection(url, props) try { var tableExists = JdbcUtils.tableExists(conn, url, table) if (mode == SaveMode.Ignore && tableExists) { return } if (mode == SaveMode.ErrorIfExists && tableExists) { sys.error(s"Table $table already exists.") } if (mode == SaveMode.Overwrite && tableExists) { JdbcUtils.dropTable(conn, table) tableExists = false } // Create the table if the table didn't exist. if (!tableExists) { val schema = JdbcUtils.schemaString(df, url) val sql = s"CREATE TABLE $table ($schema)" conn.createStatement.executeUpdate(sql) } } finally { conn.close() } JdbcUtils.saveTable(df, url, table, props) } -- View this message in context: http://apache-spark-user-list.1001560.n3.nabble.com/No-support-to-save-DataFrame-in-existing-database-table-using-DataFrameWriter-jdbc-tp25603.html Sent from the Apache Spark User List mailing list archive at Nabble.com. --------------------------------------------------------------------- To unsubscribe, e-mail: user-unsubscr...@spark.apache.org For additional commands, e-mail: user-h...@spark.apache.org