导读:在Flink1.10版本中,在Batch环和使用Blink Planner 创建TableSink出现了Batch环境不支持RetractStreamTableSink 和 UpsertStreamTableSink。下面将详细讨论导致该问题的原因及对应的解决方式。
场景
//创建流运行时环境EnvironmentSettings bbSettings = EnvironmentSettings.newInstance().useBlinkPlanner().inBatchMode().build();TableEnvironment bsTableEnv = TableEnvironment.create(bbSettings);/*StreamExecutionEnvironment bsEnv = StreamExecutionEnvironment.getExecutionEnvironment(); EnvironmentSettings bsSettings = EnvironmentSettings.newInstance().useBlinkPlanner().inStreamingMode().build(); StreamTableEnvironment bsTableEnv = StreamTableEnvironment.create(bsEnv, bsSettings);*///输出目标(MySQL) 此处记得需要引入flink-jdbc 及对应的 数据库驱动包bsTableEnv.sqlUpdate("CREATE TABLE sourceTable (" + "USER_NAME VARCHAR," + "USER_SEX VARCHAR" + ")" + "WITH (" + "'connector.type' = 'jdbc'," + "'connector.url' = '"+JDBC_URL+"'," + "'connector.table' = 'flink_test_user&