From 1228a15d96cf23fc5e1517c8ffa6bdede5f86f1b Mon Sep 17 00:00:00 2001 From: junjun Date: Tue, 19 Nov 2024 14:18:41 +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=E8=AF=AF=E5=88=A4=E6=96=AD=E6=B3=A8=E9=87=8A?= =?UTF-8?q?=E7=9A=84=E9=94=99=E8=AF=AF=20#13403?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../extensions/datasource/provider/Provider.java | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/sdk/extensions/extensions-datasource/src/main/java/io/dataease/extensions/datasource/provider/Provider.java b/sdk/extensions/extensions-datasource/src/main/java/io/dataease/extensions/datasource/provider/Provider.java index 029fb32ba5..8b434c2666 100644 --- a/sdk/extensions/extensions-datasource/src/main/java/io/dataease/extensions/datasource/provider/Provider.java +++ b/sdk/extensions/extensions-datasource/src/main/java/io/dataease/extensions/datasource/provider/Provider.java @@ -8,6 +8,7 @@ import io.dataease.extensions.datasource.dto.*; import io.dataease.extensions.datasource.model.SQLMeta; import io.dataease.extensions.datasource.vo.DatasourceConfiguration; import lombok.Getter; +import net.sf.jsqlparser.parser.CCJSqlParserUtil; import org.apache.calcite.config.Lex; import org.apache.calcite.sql.SqlDialect; import org.apache.calcite.sql.SqlNode; @@ -196,8 +197,13 @@ public abstract class Provider { } public String replaceComment(String s) { - String regex = "/\\*[\\s\\S]*?\\*/|-- .*"; - return s.replaceAll(regex, " "); + try { + net.sf.jsqlparser.statement.Statement parse = CCJSqlParserUtil.parse(s); + return parse.toString(); + } catch (Exception e) { + DEException.throwException("SQL ERROR"); + } + return null; } public SqlDialect getDialect(DatasourceSchemaDTO coreDatasource) {