diff --git a/chat2db-server/chat2db-plugins/chat2db-mysql/src/main/java/ai/chat2db/plugin/mysql/MysqlDBManage.java b/chat2db-server/chat2db-plugins/chat2db-mysql/src/main/java/ai/chat2db/plugin/mysql/MysqlDBManage.java index 2322dd669..205d8671b 100644 --- a/chat2db-server/chat2db-plugins/chat2db-mysql/src/main/java/ai/chat2db/plugin/mysql/MysqlDBManage.java +++ b/chat2db-server/chat2db-plugins/chat2db-mysql/src/main/java/ai/chat2db/plugin/mysql/MysqlDBManage.java @@ -1,13 +1,16 @@ package ai.chat2db.plugin.mysql; -import java.sql.Connection; -import java.sql.SQLException; - import ai.chat2db.spi.DBManage; import ai.chat2db.spi.jdbc.DefaultDBManage; +import ai.chat2db.spi.model.KeyValue; +import ai.chat2db.spi.sql.ConnectInfo; import ai.chat2db.spi.sql.SQLExecutor; import org.springframework.util.StringUtils; +import java.sql.Connection; +import java.sql.SQLException; +import java.util.List; + public class MysqlDBManage extends DefaultDBManage implements DBManage { @Override public void connectDatabase(Connection connection, String database) { @@ -29,6 +32,17 @@ public void dropTable(Connection connection, String databaseName, String schemaN SQLExecutor.getInstance().execute(connection,sql, resultSet -> null); } + @Override + public Connection getConnection(ConnectInfo connectInfo) { + KeyValue keyValue = new KeyValue(); + keyValue.setKey("useInformationSchema"); + keyValue.setValue("true"); + List extendInfoList = connectInfo.getExtendInfo(); + extendInfoList.add(keyValue); + connectInfo.setExtendInfo(extendInfoList); + return super.getConnection(connectInfo); + } + public static String format(String tableName) { return "`" + tableName + "`"; }