2009-02-04 7 views
8

Dans postgresql une requête dans la querylog obtient quelque chose comme ceci:Comment « name » une requête dans Postgres

2009-02-05 00:12:27 CET LOG: duration: 3781.634 ms execute <unnamed>: SELECT QUERY .... 

Est-il possible de mettre quelque chose de plus utile dans le « < sans nom> » placé comme le url la requête a été demandée?

Existe-t-il d'autres possibilités pour suivre l'origine d'une requête dans postgresql à l'aide de jdbc à partir de Java?

Merci

Répondre

5

réponse courte est « non »

Le nom peut être défini lors de la préparation de la déclaration, en utilisant la commande PREPARE, mais qui nécessite la réécriture tous vos SQL. Il n'y a pas d'option pour simplement ajouter un paramètre de nom à vos méthodes JDBC.

Le pilote JDBC utilise à la fois des instructions préparées nommées et non nommées. Il leur donnera un nom quand il souhaite les réutiliser, ce qu'il jugera approprié si le même objet PreparedStatement est exécuté 5 fois (bien que cela soit configurable en définissant le prepareThreshold).

Documentation est here

Plus d'informations peuvent également être trouvés en recherchant le PostgreSQL JDBC mailling list

Questions connexes