VerifyLobsterIntentKbMigration.java 1.9 KB

123456789101112131415161718192021222324252627282930313233343536373839
  1. import java.nio.charset.StandardCharsets;
  2. import java.nio.file.Files;
  3. import java.nio.file.Path;
  4. import java.nio.file.StandardOpenOption;
  5. import java.sql.Connection;
  6. import java.sql.DriverManager;
  7. import java.sql.ResultSet;
  8. import java.sql.Statement;
  9. /** Verify fixed-reply seeds; writes UTF-8 report file (avoids Windows console garble). */
  10. public class VerifyLobsterIntentKbMigration {
  11. private static final Path OUT = Path.of("d:/ylrz_saas_new/java/scripts/output/verify-fixed-reply.txt");
  12. public static void main(String[] args) throws Exception {
  13. Class.forName("com.mysql.cj.jdbc.Driver");
  14. String db = args.length > 0 ? args[0] : "fs_tenant_cs1";
  15. String url = "jdbc:mysql://cq-cdb-8fjmemkb.sql.tencentcdb.com:27220/" + db
  16. + "?useSSL=false&serverTimezone=GMT%2B8&characterEncoding=utf8";
  17. StringBuilder report = new StringBuilder();
  18. report.append("database=").append(db).append('\n');
  19. try (Connection c = DriverManager.getConnection(url, "root", "Ylrz_1q2w3e4r5t6y");
  20. Statement st = c.createStatement()) {
  21. ResultSet rs = st.executeQuery(
  22. "SELECT match_key, HEX(reply_template), reply_template, CHAR_LENGTH(reply_template) "
  23. + "FROM lobster_fixed_reply_rule WHERE company_id=0 ORDER BY match_key");
  24. while (rs.next()) {
  25. report.append(rs.getString(1)).append(" len=").append(rs.getInt(4)).append('\n');
  26. report.append("HEX=").append(rs.getString(2)).append('\n');
  27. report.append("TXT=").append(rs.getString(3)).append('\n');
  28. report.append("---\n");
  29. }
  30. }
  31. Files.createDirectories(OUT.getParent());
  32. Files.writeString(OUT, report.toString(), StandardCharsets.UTF_8,
  33. StandardOpenOption.CREATE, StandardOpenOption.TRUNCATE_EXISTING);
  34. System.out.println("Wrote " + OUT.toAbsolutePath());
  35. }
  36. }