From bd56438eca1a5e7ec1103d01f61098aa7d8797d3 Mon Sep 17 00:00:00 2001 From: zhshy11 Date: Fri, 28 Feb 2020 11:47:38 +0800 Subject: [PATCH] =?UTF-8?q?sql=E8=AF=AD=E5=8F=A5=E5=A2=9E=E5=8A=A0?= =?UTF-8?q?=E5=BC=95=E5=8F=B7=EF=BC=8C=E5=85=BC=E5=AE=B9mysql=E5=85=B3?= =?UTF-8?q?=E9=94=AE=E5=AD=97=20(#2358)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../canal/client/adapter/rdb/service/RdbSyncService.java | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/client-adapter/rdb/src/main/java/com/alibaba/otter/canal/client/adapter/rdb/service/RdbSyncService.java b/client-adapter/rdb/src/main/java/com/alibaba/otter/canal/client/adapter/rdb/service/RdbSyncService.java index 78490aae..0780c4f0 100644 --- a/client-adapter/rdb/src/main/java/com/alibaba/otter/canal/client/adapter/rdb/service/RdbSyncService.java +++ b/client-adapter/rdb/src/main/java/com/alibaba/otter/canal/client/adapter/rdb/service/RdbSyncService.java @@ -245,7 +245,7 @@ public class RdbSyncService { StringBuilder insertSql = new StringBuilder(); insertSql.append("INSERT INTO ").append(SyncUtil.getDbTableName(dbMapping)).append(" ("); - columnsMap.forEach((targetColumnName, srcColumnName) -> insertSql.append(targetColumnName).append(",")); + columnsMap.forEach((targetColumnName, srcColumnName) -> insertSql.append("`").append(targetColumnName).append("`").append(",")); int len = insertSql.length(); insertSql.delete(len - 1, len).append(") VALUES ("); int mapLen = columnsMap.size(); @@ -327,7 +327,7 @@ public class RdbSyncService { if (!targetColumnNames.isEmpty()) { hasMatched = true; for (String targetColumnName : targetColumnNames) { - updateSql.append(targetColumnName).append("=?, "); + updateSql.append("`").append(targetColumnName).append("`").append("=?, "); Integer type = ctype.get(Util.cleanColumn(targetColumnName).toLowerCase()); if (type == null) { throw new RuntimeException("Target column: " + targetColumnName + " not matched"); @@ -447,7 +447,7 @@ public class RdbSyncService { if (srcColumnName == null) { srcColumnName = Util.cleanColumn(targetColumnName); } - sql.append(targetColumnName).append("=? AND "); + sql.append("`").append(targetColumnName).append("`").append("=? AND "); Integer type = ctype.get(Util.cleanColumn(targetColumnName).toLowerCase()); if (type == null) { throw new RuntimeException("Target column: " + targetColumnName + " not matched");