diff --git a/pom.xml b/pom.xml index ae00797b533c888c7921dbad837302772dd39f1d..1fc5bff445f4fa8cad5b58813036d0b295bac8da 100644 --- a/pom.xml +++ b/pom.xml @@ -41,14 +41,14 @@ org.projectlombok lombok - 1.18.22 + 1.18.24 provided com.alibaba druid - 1.2.10 + 1.2.11 @@ -62,14 +62,14 @@ com.oracle.database.jdbc ojdbc8 - 19.8.0.0 + 21.1.0.0 com.microsoft.sqlserver - sqljdbc4 - 4.0 + mssql-jdbc + 6.2.2.jre8 net.sourceforge.jtds @@ -80,7 +80,7 @@ org.postgresql postgresql - 42.2.24 + 42.2.25 diff --git a/src/main/java/com/xwintop/xJavaFxTool/services/debugTools/RdbmsSyncToolService.java b/src/main/java/com/xwintop/xJavaFxTool/services/debugTools/RdbmsSyncToolService.java index 2c85438ad9c2b2faebfec43a1dec4548730dcf6e..db9af2b01bb3089f8ea0777df9d67161908aa578 100644 --- a/src/main/java/com/xwintop/xJavaFxTool/services/debugTools/RdbmsSyncToolService.java +++ b/src/main/java/com/xwintop/xJavaFxTool/services/debugTools/RdbmsSyncToolService.java @@ -382,6 +382,36 @@ public class RdbmsSyncToolService { case Types.NCLOB: dataObjects[i] = rs.getString(i + 1); break; + case Types.SMALLINT: + case Types.TINYINT: + case Types.INTEGER: + case Types.BIGINT: + try { + dataObjects[i] = rs.getBigDecimal(i + 1); + } catch (Exception e) { + log.warn("获取数据异常,列:{} ;类型:{}", i + 1, rsMetaData.getColumnType(i + 1)); + dataObjects[i] = rs.getString(i + 1); + } + break; + case Types.NUMERIC: + case Types.DECIMAL: + try { + dataObjects[i] = rs.getBigDecimal(i + 1); + } catch (Exception e) { + log.warn("获取数据异常,列:{} ;类型:{}", i + 1, rsMetaData.getColumnType(i + 1)); + dataObjects[i] = rs.getString(i + 1); + } + break; + case Types.FLOAT: + case Types.REAL: + case Types.DOUBLE: + try { + dataObjects[i] = rs.getBigDecimal(i + 1); + } catch (Exception e) { + log.warn("获取数据异常,列:{} ;类型:{}", i + 1, rsMetaData.getColumnType(i + 1)); + dataObjects[i] = rs.getString(i + 1); + } + break; case Types.TIME: dataObjects[i] = rs.getTime(i + 1); break; @@ -399,8 +429,7 @@ public class RdbmsSyncToolService { case Types.VARBINARY: case Types.BLOB: case Types.LONGVARBINARY: - byte[] value = rs.getBytes(i + 1); - dataObjects[i] = value == null ? null : new String(value); + dataObjects[i] = rs.getBytes(i + 1); break; default: dataObjects[i] = rs.getObject(i + 1); diff --git a/src/main/resources/com/xwintop/xJavaFxTool/fxmlView/debugTools/RdbmsSyncTool.fxml b/src/main/resources/com/xwintop/xJavaFxTool/fxmlView/debugTools/RdbmsSyncTool.fxml index 6d977c682267a7c858ae43e21190197f05027723..c9ac2b9ed08b1354a64197c6cc38290d9b28512b 100644 --- a/src/main/resources/com/xwintop/xJavaFxTool/fxmlView/debugTools/RdbmsSyncTool.fxml +++ b/src/main/resources/com/xwintop/xJavaFxTool/fxmlView/debugTools/RdbmsSyncTool.fxml @@ -72,7 +72,7 @@