首页 > 解决方案 > 使用 pg promise 执行代码块 (DO)

问题描述

我正在使用 pg promise,但我似乎无法在文档中找到关于我是否能够执行 DO 块的任何地方。我正在尝试做的一个简短示例如下所示:

public async update(oldDate, newDate) {
   try {
      const query = `DO $$
      DECLARE
      users record;
      BEGIN
      FOR users in (
         SELECT * FROM accounts WHERE type = 'standard'
      )
      LOOP
      INSERT INTO standard_accounts(id, name) VALUES('some id', 'some name');
      END LOOP
      END$$`;

      await pgPromise.any(query);
   } catch (error) {
      throw new Error('error');
   }
}

我对使用它比较陌生,所以我不确定我是否可以使用这种方法,或者我是否必须找到另一种方法。任何帮助,将不胜感激。

标签: postgresqlpg-promise

解决方案


推荐阅读