You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@shardingsphere.apache.org by zh...@apache.org on 2023/03/24 02:19:53 UTC

[shardingsphere] branch master updated: Revise pr 23703 (#24792)

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

zhaojinchao 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 43656bfd149 Revise pr 23703 (#24792)
43656bfd149 is described below

commit 43656bfd149dd9943133bb38fca847903aa98cbf
Author: Zhengqiang Duan <du...@apache.org>
AuthorDate: Fri Mar 24 10:19:44 2023 +0800

    Revise pr 23703 (#24792)
---
 .../translatable/ParseRexNodeVisitorImpl.java      | 23 +++++++++++-----------
 1 file changed, 12 insertions(+), 11 deletions(-)

diff --git a/kernel/sql-federation/optimizer/src/main/java/org/apache/shardingsphere/sqlfederation/optimizer/metadata/translatable/ParseRexNodeVisitorImpl.java b/kernel/sql-federation/optimizer/src/main/java/org/apache/shardingsphere/sqlfederation/optimizer/metadata/translatable/ParseRexNodeVisitorImpl.java
index 92dd2cbbe65..e7a93a14f67 100644
--- a/kernel/sql-federation/optimizer/src/main/java/org/apache/shardingsphere/sqlfederation/optimizer/metadata/translatable/ParseRexNodeVisitorImpl.java
+++ b/kernel/sql-federation/optimizer/src/main/java/org/apache/shardingsphere/sqlfederation/optimizer/metadata/translatable/ParseRexNodeVisitorImpl.java
@@ -52,6 +52,7 @@ import org.apache.shardingsphere.sqlfederation.optimizer.parser.rexnode.ParseRex
 
 import java.math.BigDecimal;
 import java.sql.Date;
+import java.sql.Types;
 import java.util.LinkedList;
 import java.util.List;
 import java.util.Map;
@@ -148,7 +149,7 @@ public final class ParseRexNodeVisitorImpl extends ParseRexNodeBaseVisitor<RexNo
         Integer index = Integer.valueOf(ctx.INTEGER_().getText());
         String sign = ctx.getParent().getStop().getText();
         if (null != columnMap.get(index)) {
-            Class dataType = getClass(columnMap.get(index));
+            Class<?> dataType = getClass(columnMap.get(index));
             return rexBuilder.makeInputRef(typeFactory.createJavaType(dataType), index);
         }
         if (ctx.getParent() instanceof CastContext) {
@@ -176,23 +177,23 @@ public final class ParseRexNodeVisitorImpl extends ParseRexNodeBaseVisitor<RexNo
      * @param dataType sql type
      * @return java type
      */
-    private Class getClass(final int dataType) {
+    private Class<?> getClass(final int dataType) {
         switch (dataType) {
-            case -5:
+            case Types.BIGINT:
                 return Long.class;
-            case 1:
+            case Types.CHAR:
                 return String.class;
-            case 4:
+            case Types.INTEGER:
                 return Integer.class;
-            case 5:
+            case Types.SMALLINT:
                 return Short.class;
-            case 6:
+            case Types.FLOAT:
                 return Float.class;
-            case 8:
+            case Types.DOUBLE:
                 return Double.class;
-            case 12:
+            case Types.VARCHAR:
                 return String.class;
-            case 91:
+            case Types.DATE:
                 return Date.class;
             default:
                 return String.class;
@@ -242,7 +243,7 @@ public final class ParseRexNodeVisitorImpl extends ParseRexNodeBaseVisitor<RexNo
     }
     
     private RexNode makeLiteral(final String text) {
-        Class parameterType = parameters.get(text).getClass();
+        Class<?> parameterType = parameters.get(text).getClass();
         Object parameter = parameters.get(text);
         if (parameterType.equals(Integer.class)) {
             return rexBuilder.makeLiteral(parameter, typeFactory.createSqlType(SqlTypeName.INTEGER), false);