import java.nio.charset.StandardCharsets; import java.nio.file.Files; import java.nio.file.Path; import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.Statement; /** * Apply company_tag_binding_exec_stats to tenant databases. */ public class ApplyBindingExecStatsTable { private static final String HOST = "cq-cdb-8fjmemkb.sql.tencentcdb.com:27220"; private static final String USER = "root"; private static final String PWD = "Ylrz_1q2w3e4r5t6y"; public static void main(String[] args) throws Exception { String sql = Files.readString( Path.of("d:/ylrz_saas_new/java/sql/tenant/V20260621_01__lobster_binding_exec_stats.sql"), StandardCharsets.UTF_8); String[] dbs = args.length > 0 ? args : new String[]{"fs_tenant_cs1"}; for (String db : dbs) { String url = "jdbc:mysql://" + HOST + "/" + db + "?useSSL=false&serverTimezone=GMT%2B8&allowMultiQueries=true"; try (Connection c = DriverManager.getConnection(url, USER, PWD); Statement st = c.createStatement()) { st.execute(sql); try (ResultSet rs = st.executeQuery( "SELECT COUNT(*) FROM information_schema.TABLES WHERE TABLE_SCHEMA=DATABASE() AND TABLE_NAME='company_tag_binding_exec_stats'")) { rs.next(); System.out.println(db + " company_tag_binding_exec_stats exists: " + (rs.getInt(1) > 0)); } } } } }