diff --git a/cloud-etl-server/src/main/java/com/muyu/cloud/etl/service/impl/ProductServiceImpl.java b/cloud-etl-server/src/main/java/com/muyu/cloud/etl/service/impl/ProductServiceImpl.java index d3b83e7..364946e 100644 --- a/cloud-etl-server/src/main/java/com/muyu/cloud/etl/service/impl/ProductServiceImpl.java +++ b/cloud-etl-server/src/main/java/com/muyu/cloud/etl/service/impl/ProductServiceImpl.java @@ -421,6 +421,37 @@ public class ProductServiceImpl implements ProductService { } private String buildBatchInsertSQL(String tableName, DataValue[][] batch) { +// StringBuilder columns = new StringBuilder("("); +// StringBuilder values = new StringBuilder("VALUES "); +// +// // 构建字段名 +// for (DataValue dataValue : batch[0]) { +// String key = dataValue.getKey(); +// columns.append(key).append(", "); +// } +// +// // 删除最后一个逗号和空格 +// columns.delete(columns.length() - 2, columns.length()); +// +// // 构建值部分 +// for (DataValue[] dataValueList : batch) { +// values.append("("); +// for (DataValue dataValue : dataValueList) { +// Object value = dataValue.getValue(); +// values.append("?, "); // 使用占位符 +// } +// values.delete(values.length() - 2, values.length()); +// values.append("), "); +// } +// +// values.delete(values.length() - 2, values.length()); +// // 完成 SQL 插入语句 +// String sql = "INSERT INTO " + tableName + " " + columns.toString() + " )" + values.toString() + ");"; +// log.info("执行的sql添加的sql语句: {}", sql); +// return sql; + + + StringBuilder columns = new StringBuilder("("); StringBuilder values = new StringBuilder("VALUES "); @@ -436,17 +467,18 @@ public class ProductServiceImpl implements ProductService { // 构建值部分 for (DataValue[] dataValueList : batch) { values.append("("); - for (DataValue dataValue : dataValueList) { - Object value = dataValue.getValue(); - values.append("?, "); // 使用占位符 + for (int i = 0; i < dataValueList.length; i++) { + if (i > 0) { + values.append(", "); + } + values.append("?"); // 使用占位符 } - values.delete(values.length() - 2, values.length()); values.append("), "); } values.delete(values.length() - 2, values.length()); // 完成 SQL 插入语句 - String sql = "INSERT INTO " + tableName + " " + columns.toString() + " )" + values.toString() + ");"; + String sql = "INSERT INTO " + tableName + " " + columns.toString() + " " + values.toString() + ")"; log.info("执行的sql添加的sql语句: {}", sql); return sql; }