Skip to content

Commit 3cd682e

Browse files
author
mohamed.hanchi
committed
[MHA] map BigInteger to Types.NUMERIC instead of Types.DECIMAL
1 parent 56a84ab commit 3cd682e

File tree

1 file changed

+14
-5
lines changed

1 file changed

+14
-5
lines changed

clickhouse-jdbc/src/main/java/com/clickhouse/jdbc/JdbcTypeMapping.java

Lines changed: 14 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -158,11 +158,13 @@ protected int getSqlType(Class<?> javaClass) { // and purpose(e.g. for read or w
158158
sqlType = Types.BIGINT;
159159
} else if (javaClass == float.class || javaClass == Float.class) {
160160
sqlType = Types.FLOAT;
161-
} else if (javaClass == double.class || javaClass == Double.class) {
162-
sqlType = Types.DOUBLE;
163-
} else if (javaClass == BigInteger.class || javaClass == BigDecimal.class) {
164-
sqlType = Types.DECIMAL;
165-
} else if (javaClass == Date.class || javaClass == LocalDate.class) {
161+
} else if (javaClass == double.class || javaClass == Double.class) {
162+
sqlType = Types.DOUBLE;
163+
} else if (javaClass == BigInteger.class) {
164+
sqlType = Types.NUMERIC;
165+
} else if (javaClass == BigDecimal.class) {
166+
sqlType = Types.DECIMAL;
167+
} else if (javaClass == Date.class || javaClass == LocalDate.class) {
166168
sqlType = Types.DATE;
167169
} else if (javaClass == Time.class || javaClass == LocalTime.class) {
168170
sqlType = Types.TIME;
@@ -528,6 +530,13 @@ public Class<?> toJavaClass(ClickHouseColumn column, Map<String, Class<?>> typeM
528530

529531
ClickHouseDataType type = column.getDataType();
530532
switch (type) {
533+
case UInt64:
534+
case Int128:
535+
case UInt128:
536+
case Int256:
537+
case UInt256:
538+
clazz = BigInteger.class;
539+
break;
531540
case DateTime:
532541
case DateTime32:
533542
case DateTime64:

0 commit comments

Comments
 (0)