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 =