如果我运行PostgreSQL命令生成输出作为文本流,例如vacuum full verbose analyze
,我如何使用JDBC连接捕获其输出?
答案 0 :(得分:2)
这在用于运行命令的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以获取更多详细信息。