You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@shardingsphere.apache.org by tu...@apache.org on 2022/11/04 03:29:11 UTC

[shardingsphere] branch master updated: Rename JDBCRowsLoader to DialectQueryResultDataRowLoader and add PostgreSQL, openGauss implement (#21945)

This is an automated email from the ASF dual-hosted git repository.

tuichenchuxin pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/shardingsphere.git


The following commit(s) were added to refs/heads/master by this push:
     new 8dbf3a5395d Rename JDBCRowsLoader to DialectQueryResultDataRowLoader and add PostgreSQL, openGauss implement (#21945)
8dbf3a5395d is described below

commit 8dbf3a5395d41fd26116cb4920b742e9de20617a
Author: Zhengqiang Duan <du...@apache.org>
AuthorDate: Fri Nov 4 11:29:05 2022 +0800

    Rename JDBCRowsLoader to DialectQueryResultDataRowLoader and add PostgreSQL, openGauss implement (#21945)
---
 .../jdbc/type/memory/JDBCMemoryQueryResult.java    |  4 ++--
 ....java => AbstractQueryResultDataRowLoader.java} | 24 +++++++++++++++-------
 ...r.java => DialectQueryResultDataRowLoader.java} |  6 +++---
 ...=> DialectQueryResultDataRowLoaderFactory.java} | 13 ++++++------
 .../DefaultQueryResultDataRowLoader.java}          | 15 ++++++++++----
 .../MySQLQueryResultDataRowLoader.java}            | 15 ++++++++++----
 .../OpenGuassQueryResultDataRowLoader.java}        | 20 ++++++++++--------
 .../PostgreSQLQueryResultDataRowLoader.java}       | 20 ++++++++++--------
 ....memory.loader.DialectQueryResultDataRowLoader} |  6 ++++--
 9 files changed, 77 insertions(+), 46 deletions(-)

diff --git a/infra/executor/src/main/java/org/apache/shardingsphere/infra/executor/sql/execute/result/query/impl/driver/jdbc/type/memory/JDBCMemoryQueryResult.java b/infra/executor/src/main/java/org/apache/shardingsphere/infra/executor/sql/execute/result/query/impl/driver/jdbc/type/memory/JDBCMemoryQueryResult.java
index 043b6c79ce3..cc38648196b 100644
--- a/infra/executor/src/main/java/org/apache/shardingsphere/infra/executor/sql/execute/result/query/impl/driver/jdbc/type/memory/JDBCMemoryQueryResult.java
+++ b/infra/executor/src/main/java/org/apache/shardingsphere/infra/executor/sql/execute/result/query/impl/driver/jdbc/type/memory/JDBCMemoryQueryResult.java
@@ -19,7 +19,7 @@ package org.apache.shardingsphere.infra.executor.sql.execute.result.query.impl.d
 
 import org.apache.shardingsphere.infra.database.type.DatabaseType;
 import org.apache.shardingsphere.infra.executor.sql.execute.result.query.impl.driver.jdbc.metadata.JDBCQueryResultMetaData;
-import org.apache.shardingsphere.infra.executor.sql.execute.result.query.impl.driver.jdbc.type.memory.loader.DialectJDBCRowsLoaderFactory;
+import org.apache.shardingsphere.infra.executor.sql.execute.result.query.impl.driver.jdbc.type.memory.loader.DialectQueryResultDataRowLoaderFactory;
 import org.apache.shardingsphere.infra.executor.sql.execute.result.query.type.memory.AbstractMemoryQueryResult;
 
 import java.sql.ResultSet;
@@ -31,6 +31,6 @@ import java.sql.SQLException;
 public final class JDBCMemoryQueryResult extends AbstractMemoryQueryResult {
     
     public JDBCMemoryQueryResult(final ResultSet resultSet, final DatabaseType databaseType) throws SQLException {
-        super(new JDBCQueryResultMetaData(resultSet.getMetaData()), DialectJDBCRowsLoaderFactory.getInstance(databaseType).load(resultSet.getMetaData().getColumnCount(), resultSet));
+        super(new JDBCQueryResultMetaData(resultSet.getMetaData()), DialectQueryResultDataRowLoaderFactory.getInstance(databaseType).load(resultSet.getMetaData().getColumnCount(), resultSet));
     }
 }
diff --git a/infra/executor/src/main/java/org/apache/shardingsphere/infra/executor/sql/execute/result/query/impl/driver/jdbc/type/memory/loader/AbstractJDBCRowsLoader.java b/infra/executor/src/main/java/org/apache/shardingsphere/infra/executor/sql/execute/result/query/impl/driver/jdbc/type/memory/loader/AbstractQueryResultDataRowLoader.java
similarity index 84%
rename from infra/executor/src/main/java/org/apache/shardingsphere/infra/executor/sql/execute/result/query/impl/driver/jdbc/type/memory/loader/AbstractJDBCRowsLoader.java
rename to infra/executor/src/main/java/org/apache/shardingsphere/infra/executor/sql/execute/result/query/impl/driver/jdbc/type/memory/loader/AbstractQueryResultDataRowLoader.java
index e3d4c996f7d..8f7c31d75d5 100644
--- a/infra/executor/src/main/java/org/apache/shardingsphere/infra/executor/sql/execute/result/query/impl/driver/jdbc/type/memory/loader/AbstractJDBCRowsLoader.java
+++ b/infra/executor/src/main/java/org/apache/shardingsphere/infra/executor/sql/execute/result/query/impl/driver/jdbc/type/memory/loader/AbstractQueryResultDataRowLoader.java
@@ -30,9 +30,9 @@ import java.util.LinkedList;
 import java.util.List;
 
 /**
- * Abstract JDBC rows loader.
+ * Abstract dialect query result data row loader.
  */
-public abstract class AbstractJDBCRowsLoader implements JDBCRowsLoader {
+public abstract class AbstractQueryResultDataRowLoader implements DialectQueryResultDataRowLoader {
     
     @Override
     public Collection<MemoryQueryResultDataRow> load(final int columnCount, final ResultSet resultSet) throws SQLException {
@@ -56,7 +56,7 @@ public abstract class AbstractJDBCRowsLoader implements JDBCRowsLoader {
                 return resultSet.getBoolean(columnIndex);
             case Types.TINYINT:
             case Types.SMALLINT:
-                return resultSet.getInt(columnIndex);
+                return getSmallintValue(resultSet, columnIndex);
             case Types.INTEGER:
                 if (metaData.isSigned(columnIndex)) {
                     return resultSet.getInt(columnIndex);
@@ -79,7 +79,7 @@ public abstract class AbstractJDBCRowsLoader implements JDBCRowsLoader {
             case Types.LONGVARCHAR:
                 return resultSet.getString(columnIndex);
             case Types.DATE:
-                return getDate(resultSet, columnIndex);
+                return getDateValue(resultSet, columnIndex);
             case Types.TIME:
                 return resultSet.getTime(columnIndex);
             case Types.TIMESTAMP:
@@ -100,12 +100,22 @@ public abstract class AbstractJDBCRowsLoader implements JDBCRowsLoader {
     }
     
     /**
-     * Get date from result set.
+     * Get smallint value from result set.
+     *
+     * @param resultSet result set
+     * @param columnIndex column index
+     * @return smallint value
+     * @throws SQLException sql exception
+     */
+    protected abstract Object getSmallintValue(ResultSet resultSet, int columnIndex) throws SQLException;
+    
+    /**
+     * Get date value from result set.
      * 
      * @param resultSet result set
      * @param columnIndex column index
-     * @return date
+     * @return date value
      * @throws SQLException sql exception
      */
-    protected abstract Object getDate(ResultSet resultSet, int columnIndex) throws SQLException;
+    protected abstract Object getDateValue(ResultSet resultSet, int columnIndex) throws SQLException;
 }
diff --git a/infra/executor/src/main/java/org/apache/shardingsphere/infra/executor/sql/execute/result/query/impl/driver/jdbc/type/memory/loader/JDBCRowsLoader.java b/infra/executor/src/main/java/org/apache/shardingsphere/infra/executor/sql/execute/result/query/impl/driver/jdbc/type/memory/loader/DialectQueryResultDataRowLoader.java
similarity index 91%
rename from infra/executor/src/main/java/org/apache/shardingsphere/infra/executor/sql/execute/result/query/impl/driver/jdbc/type/memory/loader/JDBCRowsLoader.java
rename to infra/executor/src/main/java/org/apache/shardingsphere/infra/executor/sql/execute/result/query/impl/driver/jdbc/type/memory/loader/DialectQueryResultDataRowLoader.java
index b3d25d1f762..1387ee3ec60 100644
--- a/infra/executor/src/main/java/org/apache/shardingsphere/infra/executor/sql/execute/result/query/impl/driver/jdbc/type/memory/loader/JDBCRowsLoader.java
+++ b/infra/executor/src/main/java/org/apache/shardingsphere/infra/executor/sql/execute/result/query/impl/driver/jdbc/type/memory/loader/DialectQueryResultDataRowLoader.java
@@ -27,17 +27,17 @@ import java.sql.SQLException;
 import java.util.Collection;
 
 /**
- * JDBC rows loader.
+ * Dialect query result data row loader.
  */
 @SingletonSPI
-public interface JDBCRowsLoader extends TypedSPI, RequiredSPI {
+public interface DialectQueryResultDataRowLoader extends TypedSPI, RequiredSPI {
     
     /**
      * Load rows.
      *
      * @param columnCount column count
      * @param resultSet result set of JDBC
-     * @return Query result data rows
+     * @return query result data rows
      * @throws SQLException SQL exception
      */
     Collection<MemoryQueryResultDataRow> load(int columnCount, ResultSet resultSet) throws SQLException;
diff --git a/infra/executor/src/main/java/org/apache/shardingsphere/infra/executor/sql/execute/result/query/impl/driver/jdbc/type/memory/loader/DialectJDBCRowsLoaderFactory.java b/infra/executor/src/main/java/org/apache/shardingsphere/infra/executor/sql/execute/result/query/impl/driver/jdbc/type/memory/loader/DialectQueryResultDataRowLoaderFactory.java
similarity index 71%
rename from infra/executor/src/main/java/org/apache/shardingsphere/infra/executor/sql/execute/result/query/impl/driver/jdbc/type/memory/loader/DialectJDBCRowsLoaderFactory.java
rename to infra/executor/src/main/java/org/apache/shardingsphere/infra/executor/sql/execute/result/query/impl/driver/jdbc/type/memory/loader/DialectQueryResultDataRowLoaderFactory.java
index acb9a9155c9..2ac8ed420b4 100644
--- a/infra/executor/src/main/java/org/apache/shardingsphere/infra/executor/sql/execute/result/query/impl/driver/jdbc/type/memory/loader/DialectJDBCRowsLoaderFactory.java
+++ b/infra/executor/src/main/java/org/apache/shardingsphere/infra/executor/sql/execute/result/query/impl/driver/jdbc/type/memory/loader/DialectQueryResultDataRowLoaderFactory.java
@@ -25,22 +25,23 @@ import org.apache.shardingsphere.infra.util.spi.type.required.RequiredSPIRegistr
 import org.apache.shardingsphere.infra.util.spi.type.typed.TypedSPIRegistry;
 
 /**
- * Dialect JDBC rows loader factory.
+ * Dialect query result data row loader factory.
  */
 @NoArgsConstructor(access = AccessLevel.PRIVATE)
-public final class DialectJDBCRowsLoaderFactory {
+public final class DialectQueryResultDataRowLoaderFactory {
     
     static {
-        ShardingSphereServiceLoader.register(JDBCRowsLoader.class);
+        ShardingSphereServiceLoader.register(DialectQueryResultDataRowLoader.class);
     }
     
     /**
-     * Find instance of dialect JDBC rows loader factory.
+     * Find instance of dialect query result data row loader factory.
      *
      * @param databaseType database type
      * @return found instance
      */
-    public static JDBCRowsLoader getInstance(final DatabaseType databaseType) {
-        return TypedSPIRegistry.findRegisteredService(JDBCRowsLoader.class, databaseType.getType()).orElseGet(() -> RequiredSPIRegistry.getRegisteredService(JDBCRowsLoader.class));
+    public static DialectQueryResultDataRowLoader getInstance(final DatabaseType databaseType) {
+        return TypedSPIRegistry.findRegisteredService(DialectQueryResultDataRowLoader.class, databaseType.getType())
+                .orElseGet(() -> RequiredSPIRegistry.getRegisteredService(DialectQueryResultDataRowLoader.class));
     }
 }
diff --git a/infra/executor/src/main/java/org/apache/shardingsphere/infra/executor/sql/execute/result/query/impl/driver/jdbc/type/memory/loader/DefaultRowsLoader.java b/infra/executor/src/main/java/org/apache/shardingsphere/infra/executor/sql/execute/result/query/impl/driver/jdbc/type/memory/loader/dialect/DefaultQueryResultDataRowLoader.java
similarity index 65%
copy from infra/executor/src/main/java/org/apache/shardingsphere/infra/executor/sql/execute/result/query/impl/driver/jdbc/type/memory/loader/DefaultRowsLoader.java
copy to infra/executor/src/main/java/org/apache/shardingsphere/infra/executor/sql/execute/result/query/impl/driver/jdbc/type/memory/loader/dialect/DefaultQueryResultDataRowLoader.java
index 1204c3d8c80..7f1c263adb7 100644
--- a/infra/executor/src/main/java/org/apache/shardingsphere/infra/executor/sql/execute/result/query/impl/driver/jdbc/type/memory/loader/DefaultRowsLoader.java
+++ b/infra/executor/src/main/java/org/apache/shardingsphere/infra/executor/sql/execute/result/query/impl/driver/jdbc/type/memory/loader/dialect/DefaultQueryResultDataRowLoader.java
@@ -15,18 +15,25 @@
  * limitations under the License.
  */
 
-package org.apache.shardingsphere.infra.executor.sql.execute.result.query.impl.driver.jdbc.type.memory.loader;
+package org.apache.shardingsphere.infra.executor.sql.execute.result.query.impl.driver.jdbc.type.memory.loader.dialect;
+
+import org.apache.shardingsphere.infra.executor.sql.execute.result.query.impl.driver.jdbc.type.memory.loader.AbstractQueryResultDataRowLoader;
 
 import java.sql.ResultSet;
 import java.sql.SQLException;
 
 /**
- * Default rows loader.
+ * Default query result data row loader.
  */
-public final class DefaultRowsLoader extends AbstractJDBCRowsLoader {
+public final class DefaultQueryResultDataRowLoader extends AbstractQueryResultDataRowLoader {
+    
+    @Override
+    protected Object getSmallintValue(final ResultSet resultSet, final int columnIndex) throws SQLException {
+        return resultSet.getInt(columnIndex);
+    }
     
     @Override
-    protected Object getDate(final ResultSet resultSet, final int columnIndex) throws SQLException {
+    protected Object getDateValue(final ResultSet resultSet, final int columnIndex) throws SQLException {
         return resultSet.getDate(columnIndex);
     }
     
diff --git a/infra/executor/src/main/java/org/apache/shardingsphere/infra/executor/sql/execute/result/query/impl/driver/jdbc/type/memory/loader/MySQLRowsLoader.java b/infra/executor/src/main/java/org/apache/shardingsphere/infra/executor/sql/execute/result/query/impl/driver/jdbc/type/memory/loader/dialect/MySQLQueryResultDataRowLoader.java
similarity index 71%
rename from infra/executor/src/main/java/org/apache/shardingsphere/infra/executor/sql/execute/result/query/impl/driver/jdbc/type/memory/loader/MySQLRowsLoader.java
rename to infra/executor/src/main/java/org/apache/shardingsphere/infra/executor/sql/execute/result/query/impl/driver/jdbc/type/memory/loader/dialect/MySQLQueryResultDataRowLoader.java
index 540ce836352..5d0b0d4b26c 100644
--- a/infra/executor/src/main/java/org/apache/shardingsphere/infra/executor/sql/execute/result/query/impl/driver/jdbc/type/memory/loader/MySQLRowsLoader.java
+++ b/infra/executor/src/main/java/org/apache/shardingsphere/infra/executor/sql/execute/result/query/impl/driver/jdbc/type/memory/loader/dialect/MySQLQueryResultDataRowLoader.java
@@ -15,20 +15,27 @@
  * limitations under the License.
  */
 
-package org.apache.shardingsphere.infra.executor.sql.execute.result.query.impl.driver.jdbc.type.memory.loader;
+package org.apache.shardingsphere.infra.executor.sql.execute.result.query.impl.driver.jdbc.type.memory.loader.dialect;
+
+import org.apache.shardingsphere.infra.executor.sql.execute.result.query.impl.driver.jdbc.type.memory.loader.AbstractQueryResultDataRowLoader;
 
 import java.sql.ResultSet;
 import java.sql.SQLException;
 
 /**
- * MySQL rows loader.
+ * MySQL query result data row loader.
  */
-public final class MySQLRowsLoader extends AbstractJDBCRowsLoader {
+public final class MySQLQueryResultDataRowLoader extends AbstractQueryResultDataRowLoader {
     
     private static final String YEAR_DATA_TYPE = "YEAR";
     
     @Override
-    protected Object getDate(final ResultSet resultSet, final int columnIndex) throws SQLException {
+    protected Object getSmallintValue(final ResultSet resultSet, final int columnIndex) throws SQLException {
+        return resultSet.getInt(columnIndex);
+    }
+    
+    @Override
+    protected Object getDateValue(final ResultSet resultSet, final int columnIndex) throws SQLException {
         if (isYearDataType(resultSet.getMetaData().getColumnTypeName(columnIndex))) {
             Object result = resultSet.getObject(columnIndex);
             return resultSet.wasNull() ? null : result;
diff --git a/infra/executor/src/main/java/org/apache/shardingsphere/infra/executor/sql/execute/result/query/impl/driver/jdbc/type/memory/loader/DefaultRowsLoader.java b/infra/executor/src/main/java/org/apache/shardingsphere/infra/executor/sql/execute/result/query/impl/driver/jdbc/type/memory/loader/dialect/OpenGuassQueryResultDataRowLoader.java
similarity index 63%
copy from infra/executor/src/main/java/org/apache/shardingsphere/infra/executor/sql/execute/result/query/impl/driver/jdbc/type/memory/loader/DefaultRowsLoader.java
copy to infra/executor/src/main/java/org/apache/shardingsphere/infra/executor/sql/execute/result/query/impl/driver/jdbc/type/memory/loader/dialect/OpenGuassQueryResultDataRowLoader.java
index 1204c3d8c80..37aebdffc32 100644
--- a/infra/executor/src/main/java/org/apache/shardingsphere/infra/executor/sql/execute/result/query/impl/driver/jdbc/type/memory/loader/DefaultRowsLoader.java
+++ b/infra/executor/src/main/java/org/apache/shardingsphere/infra/executor/sql/execute/result/query/impl/driver/jdbc/type/memory/loader/dialect/OpenGuassQueryResultDataRowLoader.java
@@ -15,28 +15,30 @@
  * limitations under the License.
  */
 
-package org.apache.shardingsphere.infra.executor.sql.execute.result.query.impl.driver.jdbc.type.memory.loader;
+package org.apache.shardingsphere.infra.executor.sql.execute.result.query.impl.driver.jdbc.type.memory.loader.dialect;
+
+import org.apache.shardingsphere.infra.executor.sql.execute.result.query.impl.driver.jdbc.type.memory.loader.AbstractQueryResultDataRowLoader;
 
 import java.sql.ResultSet;
 import java.sql.SQLException;
 
 /**
- * Default rows loader.
+ * OpenGauss query result data row loader.
  */
-public final class DefaultRowsLoader extends AbstractJDBCRowsLoader {
+public final class OpenGuassQueryResultDataRowLoader extends AbstractQueryResultDataRowLoader {
     
     @Override
-    protected Object getDate(final ResultSet resultSet, final int columnIndex) throws SQLException {
-        return resultSet.getDate(columnIndex);
+    protected Object getSmallintValue(final ResultSet resultSet, final int columnIndex) throws SQLException {
+        return resultSet.getShort(columnIndex);
     }
     
     @Override
-    public String getType() {
-        return "Default";
+    protected Object getDateValue(final ResultSet resultSet, final int columnIndex) throws SQLException {
+        return resultSet.getDate(columnIndex);
     }
     
     @Override
-    public boolean isDefault() {
-        return true;
+    public String getType() {
+        return "openGauss";
     }
 }
diff --git a/infra/executor/src/main/java/org/apache/shardingsphere/infra/executor/sql/execute/result/query/impl/driver/jdbc/type/memory/loader/DefaultRowsLoader.java b/infra/executor/src/main/java/org/apache/shardingsphere/infra/executor/sql/execute/result/query/impl/driver/jdbc/type/memory/loader/dialect/PostgreSQLQueryResultDataRowLoader.java
similarity index 63%
rename from infra/executor/src/main/java/org/apache/shardingsphere/infra/executor/sql/execute/result/query/impl/driver/jdbc/type/memory/loader/DefaultRowsLoader.java
rename to infra/executor/src/main/java/org/apache/shardingsphere/infra/executor/sql/execute/result/query/impl/driver/jdbc/type/memory/loader/dialect/PostgreSQLQueryResultDataRowLoader.java
index 1204c3d8c80..80df55becd6 100644
--- a/infra/executor/src/main/java/org/apache/shardingsphere/infra/executor/sql/execute/result/query/impl/driver/jdbc/type/memory/loader/DefaultRowsLoader.java
+++ b/infra/executor/src/main/java/org/apache/shardingsphere/infra/executor/sql/execute/result/query/impl/driver/jdbc/type/memory/loader/dialect/PostgreSQLQueryResultDataRowLoader.java
@@ -15,28 +15,30 @@
  * limitations under the License.
  */
 
-package org.apache.shardingsphere.infra.executor.sql.execute.result.query.impl.driver.jdbc.type.memory.loader;
+package org.apache.shardingsphere.infra.executor.sql.execute.result.query.impl.driver.jdbc.type.memory.loader.dialect;
+
+import org.apache.shardingsphere.infra.executor.sql.execute.result.query.impl.driver.jdbc.type.memory.loader.AbstractQueryResultDataRowLoader;
 
 import java.sql.ResultSet;
 import java.sql.SQLException;
 
 /**
- * Default rows loader.
+ * PostgreSQL query result data row loader.
  */
-public final class DefaultRowsLoader extends AbstractJDBCRowsLoader {
+public final class PostgreSQLQueryResultDataRowLoader extends AbstractQueryResultDataRowLoader {
     
     @Override
-    protected Object getDate(final ResultSet resultSet, final int columnIndex) throws SQLException {
-        return resultSet.getDate(columnIndex);
+    protected Object getSmallintValue(final ResultSet resultSet, final int columnIndex) throws SQLException {
+        return resultSet.getShort(columnIndex);
     }
     
     @Override
-    public String getType() {
-        return "Default";
+    protected Object getDateValue(final ResultSet resultSet, final int columnIndex) throws SQLException {
+        return resultSet.getDate(columnIndex);
     }
     
     @Override
-    public boolean isDefault() {
-        return true;
+    public String getType() {
+        return "PostgreSQL";
     }
 }
diff --git a/infra/executor/src/main/resources/META-INF/services/org.apache.shardingsphere.infra.executor.sql.execute.result.query.impl.driver.jdbc.type.memory.loader.JDBCRowsLoader b/infra/executor/src/main/resources/META-INF/services/org.apache.shardingsphere.infra.executor.sql.execute.result.query.impl.driver.jdbc.type.memory.loader.DialectQueryResultDataRowLoader
similarity index 67%
rename from infra/executor/src/main/resources/META-INF/services/org.apache.shardingsphere.infra.executor.sql.execute.result.query.impl.driver.jdbc.type.memory.loader.JDBCRowsLoader
rename to infra/executor/src/main/resources/META-INF/services/org.apache.shardingsphere.infra.executor.sql.execute.result.query.impl.driver.jdbc.type.memory.loader.DialectQueryResultDataRowLoader
index 9b791effc34..ba3cb4f780f 100644
--- a/infra/executor/src/main/resources/META-INF/services/org.apache.shardingsphere.infra.executor.sql.execute.result.query.impl.driver.jdbc.type.memory.loader.JDBCRowsLoader
+++ b/infra/executor/src/main/resources/META-INF/services/org.apache.shardingsphere.infra.executor.sql.execute.result.query.impl.driver.jdbc.type.memory.loader.DialectQueryResultDataRowLoader
@@ -15,5 +15,7 @@
 # limitations under the License.
 #
 
-org.apache.shardingsphere.infra.executor.sql.execute.result.query.impl.driver.jdbc.type.memory.loader.DefaultRowsLoader
-org.apache.shardingsphere.infra.executor.sql.execute.result.query.impl.driver.jdbc.type.memory.loader.MySQLRowsLoader
+org.apache.shardingsphere.infra.executor.sql.execute.result.query.impl.driver.jdbc.type.memory.loader.dialect.DefaultQueryResultDataRowLoader
+org.apache.shardingsphere.infra.executor.sql.execute.result.query.impl.driver.jdbc.type.memory.loader.dialect.MySQLQueryResultDataRowLoader
+org.apache.shardingsphere.infra.executor.sql.execute.result.query.impl.driver.jdbc.type.memory.loader.dialect.OpenGuassQueryResultDataRowLoader
+org.apache.shardingsphere.infra.executor.sql.execute.result.query.impl.driver.jdbc.type.memory.loader.dialect.PostgreSQLQueryResultDataRowLoader