From c89dc628fd9127dc2b217bc00232a519eaf789dd Mon Sep 17 00:00:00 2001 From: taojinlong Date: Mon, 27 Jun 2022 18:23:52 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20MySql=E6=95=B0=E6=8D=AE=E5=BA=93?= =?UTF-8?q?=E8=A1=A8=E5=90=8D=E7=A7=B0=E5=90=AB=E6=9C=89=E5=B0=8F=E6=95=B0?= =?UTF-8?q?=E7=82=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/io/dataease/provider/datasource/JdbcProvider.java | 7 ++++++- frontend/src/views/system/datasource/DsForm.vue | 3 ++- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/backend/src/main/java/io/dataease/provider/datasource/JdbcProvider.java b/backend/src/main/java/io/dataease/provider/datasource/JdbcProvider.java index a8427ecca1..fdbe2110a9 100644 --- a/backend/src/main/java/io/dataease/provider/datasource/JdbcProvider.java +++ b/backend/src/main/java/io/dataease/provider/datasource/JdbcProvider.java @@ -10,6 +10,7 @@ import io.dataease.i18n.Translator; import io.dataease.plugins.common.base.domain.DeDriver; import io.dataease.plugins.common.base.mapper.DeDriverMapper; import io.dataease.plugins.common.constants.DatasourceTypes; +import io.dataease.plugins.common.constants.datasource.MySQLConstants; import io.dataease.plugins.common.dto.datasource.TableField; import io.dataease.plugins.common.request.datasource.DatasourceRequest; import io.dataease.plugins.datasource.entity.JdbcConfiguration; @@ -88,7 +89,11 @@ public class JdbcProvider extends DefaultJdbcProvider { } } DatabaseMetaData databaseMetaData = connection.getMetaData(); - ResultSet resultSet = databaseMetaData.getColumns(null, "%", datasourceRequest.getTable(), "%"); + String tableNamePattern = datasourceRequest.getTable(); + if(datasourceRequest.getDatasource().getType().equalsIgnoreCase(DatasourceTypes.mysql.name())){ + tableNamePattern = String.format(MySQLConstants.KEYWORD_TABLE, tableNamePattern); + } + ResultSet resultSet = databaseMetaData.getColumns(null, "%", tableNamePattern, "%"); while (resultSet.next()) { String tableName = resultSet.getString("TABLE_NAME"); String database; diff --git a/frontend/src/views/system/datasource/DsForm.vue b/frontend/src/views/system/datasource/DsForm.vue index 1b0dddac48..0894ddb6db 100644 --- a/frontend/src/views/system/datasource/DsForm.vue +++ b/frontend/src/views/system/datasource/DsForm.vue @@ -147,7 +147,8 @@ export default { acquireIncrement: 5, idleConnectionTestPeriod: 5, connectTimeout: 5, - customDriver: 'default' + customDriver: 'default', + queryTimeout: 30 }, apiConfiguration: [] },