postgresql - 如何使用 JDBC 连接在 PostgreSQL 中捕获命令输出?

标签 postgresql jdbc

如果我运行一个将输出生成为文本流的 PostgreSQL 命令,例如 vacuum full verbose analyze,我如何使用 JDBC 连接捕获它的输出?

最佳答案

这在用于运行命令的 Statement 对象的警告中可用:

Statement stmt = connection.createStatement();
stmt.execute("vacuum verbose foobar");
SQL Warning warn = stmt.getWarnings();
if (warn != null)
{
  System.out.println(warn.getMessage);
}

理论上可以有链式警告,因此您可能想要使用一个循环来检查 SQLWarning.getNextWarning()。查看 JDK JavaDocs 了解更多详细信息。

关于postgresql - 如何使用 JDBC 连接在 PostgreSQL 中捕获命令输出?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28842853/

相关文章:

postgresql - ErrorException pg_query() : Query failed: ERROR: relation "5432posts" does not exist LINE 2: FROM "5432posts"

python - 同步数据库时我应该使用什么密码?

tomcat - 如何在 Spring/Tomcat 中完全禁用 JDBC 连接池?

java - Gradle SLF4J Redshift JDBC 冲突

java - 检查 Oracle 数据库中是否存在用户 - java jdbc

Java用户类

java - 基于 Web 的应用程序的 JDBC 插入语句中的同步

postgresql - postgresql 的应用程序样式日志记录

php - 如何在查询中正确使用变量? PostgreSQL

python - Python SQL 语句中的变量