From 5af122cfe92f90125447984c1e245af190c918f9 Mon Sep 17 00:00:00 2001 From: junjun Date: Fri, 23 Aug 2024 10:18:00 +0800 Subject: [PATCH] =?UTF-8?q?fix(=E6=95=B0=E6=8D=AE=E9=9B=86):=20=E4=BF=AE?= =?UTF-8?q?=E5=A4=8DSQL=E7=89=87=E6=AE=B5=E5=88=86=E5=8F=B7=E7=BB=93?= =?UTF-8?q?=E5=B0=BE=E5=90=8E=E6=9C=89=E7=A9=BA=E6=A0=BC=E3=80=81=E6=8D=A2?= =?UTF-8?q?=E8=A1=8C=E7=AC=A6=E6=8A=A5=E9=94=99=E7=9A=84=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../main/java/io/dataease/commons/utils/SqlparserUtils.java | 6 ++---- .../main/java/io/dataease/copilot/manage/CopilotManage.java | 2 +- .../src/main/java/io/dataease/dataset/utils/SqlUtils.java | 2 +- 3 files changed, 4 insertions(+), 6 deletions(-) diff --git a/core/core-backend/src/main/java/io/dataease/commons/utils/SqlparserUtils.java b/core/core-backend/src/main/java/io/dataease/commons/utils/SqlparserUtils.java index 7ed21f52f7..7a75eb6655 100644 --- a/core/core-backend/src/main/java/io/dataease/commons/utils/SqlparserUtils.java +++ b/core/core-backend/src/main/java/io/dataease/commons/utils/SqlparserUtils.java @@ -19,9 +19,7 @@ import net.sf.jsqlparser.statement.Statement; import net.sf.jsqlparser.statement.select.*; import net.sf.jsqlparser.util.deparser.ExpressionDeParser; import net.sf.jsqlparser.util.deparser.SelectDeParser; -import org.apache.calcite.config.Lex; import org.apache.calcite.sql.*; -import org.apache.calcite.sql.parser.SqlParseException; import org.apache.calcite.sql.parser.SqlParser; import org.apache.calcite.sql.util.SqlShuttle; import org.apache.commons.collections4.CollectionUtils; @@ -59,7 +57,7 @@ public class SqlparserUtils { Statement statement = CCJSqlParserUtil.parse(tmpSql); Select select = (Select) statement; - if(CollectionUtils.isNotEmpty(select.getWithItemsList())){ + if (CollectionUtils.isNotEmpty(select.getWithItemsList())) { for (Iterator iter = select.getWithItemsList().iterator(); iter.hasNext(); ) { WithItem withItem = iter.next(); ParenthesedSelect parenthesedSelect = (ParenthesedSelect) withItem.getSelect(); @@ -484,7 +482,7 @@ public class SqlparserUtils { DEException.throwException(Translator.get("i18n_sql_not_empty")); } if (sql.trim().endsWith(";")) { - sql = sql.substring(0, sql.length() - 1); + sql = sql.trim().substring(0, sql.length() - 1); } if (StringUtils.isNotEmpty(sqlVariableDetails)) { diff --git a/core/core-backend/src/main/java/io/dataease/copilot/manage/CopilotManage.java b/core/core-backend/src/main/java/io/dataease/copilot/manage/CopilotManage.java index 5af29a5318..eb2249e805 100644 --- a/core/core-backend/src/main/java/io/dataease/copilot/manage/CopilotManage.java +++ b/core/core-backend/src/main/java/io/dataease/copilot/manage/CopilotManage.java @@ -451,7 +451,7 @@ public class CopilotManage { if (type.equals("oracle") || type.equals("sqlServer")) { try { if (copilotSQL.trim().endsWith(";")) { - copilotSQL = copilotSQL.substring(0, copilotSQL.length() - 1); + copilotSQL = copilotSQL.trim().substring(0, copilotSQL.length() - 1); } DatasourceSchemaDTO datasourceSchemaDTO = new DatasourceSchemaDTO(); datasourceSchemaDTO.setType(type); diff --git a/core/core-backend/src/main/java/io/dataease/dataset/utils/SqlUtils.java b/core/core-backend/src/main/java/io/dataease/dataset/utils/SqlUtils.java index d0d71ee0bd..16a33ae44c 100644 --- a/core/core-backend/src/main/java/io/dataease/dataset/utils/SqlUtils.java +++ b/core/core-backend/src/main/java/io/dataease/dataset/utils/SqlUtils.java @@ -21,7 +21,7 @@ public class SqlUtils { public static String addSchema(String sql, String schema) { if (sql.trim().endsWith(";")) { - sql = sql.substring(0, sql.length() - 1); + sql = sql.trim().substring(0, sql.length() - 1); } SqlParser.Config config =