【发布时间】:2021-05-09 20:22:42
【问题描述】:
如果我有以下代码,在请求中间执行:
db.any('SET search_path TO user001; SELECT * FROM messages')
第二个请求能否在第一个查询的 SET 和 SELECT 之间执行查询? 例如:
- 第一个请求到达
-
SET search_path TO user001(第一名) - 第二个请求到达
-
SET search_path TO user002(第二次) -
SELECT * FROM messages(第一名) -
SELECT * FROM messages(第二次)
还有什么是在运行时定义 search_path 的好方法?我想过使用 db.task() 但这会将每秒的请求数限制在 100 左右,对吧?
【问题讨论】:
-
请澄清:a)“第二个请求”是指:对 postgresql 的任何其他查询?仅来自您的应用程序或连接到 PostgreSQL 实例的其他客户端?b)如果您仅指您的应用程序:做你打开多个并发会话到数据库服务器?
-
@AlexYu a) 由第二个 HTTP 请求生成的对 postgresql 的任何其他查询 b) 不,我正在使用相同的“db”对象进行查询
标签: javascript node.js postgresql pg-promise