Skip to content

Commit ac45dba

Browse files
authored
Merge pull request Tencent#299 from qiujunlin/master
update clickhouse orm support
2 parents a43b8b0 + 6981010 commit ac45dba

File tree

2 files changed

+6
-3
lines changed

2 files changed

+6
-3
lines changed

APIJSONORM/src/main/java/apijson/orm/AbstractSQLConfig.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -519,7 +519,7 @@ public static boolean isClickHouse(String db) {
519519

520520
@Override
521521
public String getQuote() {
522-
return isMySQL() ? "`" : ( isClickHouse()? "" : "\"");
522+
return isMySQL()||isClickHouse() ? "`" : "\"";
523523
}
524524

525525
@Override

APIJSONORM/src/main/java/apijson/orm/AbstractSQLExecutor.java

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -287,11 +287,14 @@ public JSONObject execute(@NotNull SQLConfig config, boolean unknowType) throws
287287
// bugfix-修复非常规数据库字段,获取表名失败导致输出异常
288288
if (isExplain == false && hasJoin && viceColumnStart > length) {
289289
List<String> column = config.getColumn();
290-
290+
String sqlTable = rsmd.getTableName(i);
291+
if (config.isClickHouse()&&(sqlTable.startsWith("`")||sqlTable.startsWith("\""))){
292+
sqlTable = sqlTable.substring(1,sqlTable.length()-1);
293+
}
291294
if (column != null && column.isEmpty() == false) {
292295
viceColumnStart = column.size() + 1;
293296
}
294-
else if (config.getSQLTable().equalsIgnoreCase(rsmd.getTableName(i)) == false) {
297+
else if (config.getSQLTable().equalsIgnoreCase(sqlTable) == false) {
295298
viceColumnStart = i;
296299
}
297300
}

0 commit comments

Comments
 (0)