From be7dcced5e2930c68e67d9ff90bff1e94e98ff27 Mon Sep 17 00:00:00 2001 From: kingron <1012593988@qq.com> Date: Mon, 11 Nov 2024 19:23:29 +0800 Subject: [PATCH] [bugfix][lib][rdbms] Fix issue that column names containing 'update' are replaced When writing to PostgreSQL using the `ON CONFLICT` statement, columns with names that include the string 'update' were being incorrectly replaced with an empty string. This commit addresses the issue by ensuring that column names are properly handled, even if they contain the substring 'update'. --- .../java/com/wgzhao/addax/rdbms/writer/util/WriterUtil.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/addax-rdbms/src/main/java/com/wgzhao/addax/rdbms/writer/util/WriterUtil.java b/lib/addax-rdbms/src/main/java/com/wgzhao/addax/rdbms/writer/util/WriterUtil.java index 9a17de7c7..0481b3776 100644 --- a/lib/addax-rdbms/src/main/java/com/wgzhao/addax/rdbms/writer/util/WriterUtil.java +++ b/lib/addax-rdbms/src/main/java/com/wgzhao/addax/rdbms/writer/util/WriterUtil.java @@ -177,7 +177,7 @@ else if (dataBaseType == DataBaseType.SQLServer) { private static String doPostgresqlUpdate(String writeMode, List columnHolders) { - String conflict = writeMode.replace("update", ""); + String conflict = writeMode.replaceFirst("update", ""); StringBuilder sb = new StringBuilder(); sb.append(" ON CONFLICT "); sb.append(conflict);