如何在postgres中"命名"一个查询

the*_*ega 10 sql postgresql jdbc

在postgresql中,querylog中的查询得到如下内容:

2009-02-05 00:12:27 CET LOG:  duration: 3781.634 ms  execute <unnamed>: SELECT QUERY ....
Run Code Online (Sandbox Code Playgroud)

是否有可能将更多可用的东西放入"<unnamed>",就像请求查询的url一样?

是否还有其他可能使用java中的jdbc在postgresql中跟踪查询的来源?

谢谢

Ste*_*nne 6

简短的回答是"不"

使用PREPARE命令准备语句时可以设置名称,但这需要重写所有SQL.没有选项可以简单地为JDBC方法添加名称参数.

JDBC驱动程序使用命名和未命名的预准备语句.当它希望重用它们时,它会给它们一个名称,如果相同的PreparedStatement对象被执行5次,它将认为是合适的(尽管可以通过设置prepareThreshold来配置).

文档在这里

通过搜索PostgreSQL JDBC填充列表也可以找到更多信息