yangys
2024-04-01 14f1953b1944b3e53d8312e151902c4695faa2e1
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
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));
    }
}