diff --git a/datachecker-extract/src/main/java/org/opengauss/datachecker/extract/task/functional/SimpleTypeHandlerFactory.java b/datachecker-extract/src/main/java/org/opengauss/datachecker/extract/task/functional/SimpleTypeHandlerFactory.java index c18503b2aa621a9dd4079e28874a1402cab8a6e7..1c0e2c0d272761e3618853e071f164291f140a17 100644 --- a/datachecker-extract/src/main/java/org/opengauss/datachecker/extract/task/functional/SimpleTypeHandlerFactory.java +++ b/datachecker-extract/src/main/java/org/opengauss/datachecker/extract/task/functional/SimpleTypeHandlerFactory.java @@ -90,7 +90,8 @@ public class SimpleTypeHandlerFactory { if (rsmd.getPrecision(columnIdx) == 1) { return resultSet.getString(columnIdx); } - return HexUtil.byteToHexTrim(resultSet.getBytes(columnIdx)); + byte[] data = resultSet.getBytes(columnIdx); + return resultSet.wasNull() ? NULL : HexUtil.byteToHexTrim(data); }; } @@ -148,7 +149,10 @@ public class SimpleTypeHandlerFactory { * @return SimpleTypeHandler */ public SimpleTypeHandler createBytesHandler() { - return (resultSet, columnLabel) -> HexUtil.byteToHex(resultSet.getBytes(columnLabel)); + return (resultSet, columnLabel) -> { + byte[] data = resultSet.getBytes(columnLabel); + return resultSet.wasNull() ? NULL : HexUtil.byteToHex(data); + }; } /**