package com.qianwen.smartman.modules.visual.dynamic.provider; import com.baomidou.mybatisplus.annotation.DbType; import com.mysql.cj.jdbc.DatabaseMetaData; import java.lang.reflect.Field; import java.sql.SQLException; import java.sql.Statement; import com.qianwen.core.tool.utils.ReflectUtil; import org.springframework.stereotype.Component; @Component /* loaded from: blade-api.jar:BOOT-INF/classes/org/springblade/modules/visual/dynamic/provider/MysqlCheckSqlProvider.class */ public class MysqlCheckSqlProvider implements CheckSqlProvider { @Override // org.springblade.modules.visual.dynamic.provider.CheckSqlProvider public String getExistTableSql() { return "select count(*) from information_schema.TABLES where TABLE_SCHEMA ='{}' and table_name = 'blade_visual_db'"; } @Override // org.springblade.modules.visual.dynamic.provider.CheckSqlProvider public String getDatabaseSchema(Statement statement) throws SQLException { Field field = ReflectUtil.findField(DatabaseMetaData.class, "database"); ReflectUtil.makeAccessible(field); return ReflectUtil.getField(field, statement.getConnection().getMetaData()).toString(); } @Override // org.springblade.modules.visual.dynamic.provider.CheckSqlProvider public Boolean support(DbType dbType) { return Boolean.valueOf(DbType.MYSQL.equals(dbType)); } }