myt*_*der 3 postgresql node.js pg-promise
我正在使用带有Nodejs的pg-promise包来执行PostgreSQL查询.我想看看执行的查询.只有特定的查询,比如说,我只想调试一个查询.
我可以看到一种推荐的方法是使用pg-monitor来捕获事件并记录它们,如示例文档中所述.
不使用pg-monitor,是否有一种简单的方法来打印执行的准备好的查询.我在文档中看不到它.
例:
db.query("SELECT * FROM table WHERE id = $/id/", {id: 2})
Run Code Online (Sandbox Code Playgroud)
如何打印此查询以产生?
SELECT * FROM table WHERE id = 2
Run Code Online (Sandbox Code Playgroud)
是否有一种简单的方法来打印执行的准备好的查询...
一般的查询 - 是的,见下文.一个准备好的查询 -不,这些都是通过格式化于服务器端的定义.
const query = pgp.as.format('SELECT * FROM table WHERE id = $/id/', {id: 2});
console.log(query);
db.any(query).then(...).catch(...)
Run Code Online (Sandbox Code Playgroud)
如果要打印模块执行的所有查询,而不使用pg-monitor,只需在初始化库时添加事件查询处理程序:
const initOptions = {
query(e) {
console.log(e.query);
}
};
const pgp = require('pg-promise')(initOptions);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1600 次 |
| 最近记录: |