java可以在JDBCIO中执行多个insert查询。使用apache beam管道在单CloudSQL连接中编写函数?
我正在使用apachebeam的JDBCIO.write()
函数将流数据写入cloudSQL。根据我的要求,我必须在两个不同的表中写入相同的数据
实际上,我正在创建两个不同的JDBCIO连接来在cloudSQL表中写入数据
有没有办法在单个JDBCIO.write()
函数中编写两个插入查询
outputStringPcollection
.apply("Write to CloudSQL table",
JdbcIO.<String> write()
.withDataSourceConfiguration(JdbcIO.DataSourceConfiguration
.create(DRIVER_CLASS_NAME,
URL)
.withUsername(USERNAME)
.withPassword(PASSWORD)
.withStatement(insertQueryTable1)
.withPreparedStatementSetter(new SetQueryParameter())
.withStatement(insertQueryTable2)
.withPreparedStatementSetter(new SetQueryParameter()));
我试图通过在单个JDBC连接中编写两个不同的insert查询来执行上述代码,但数据只插入到一个表中(即表2)
那么,我们可以在单个连接中执行多个查询吗?如果是,还有其他方法吗
提前谢谢
# 1 楼答案
不,不能在单个连接中完成。您所能做的就是: