«Если рабочий хочет хорошо выполнять свою работу, он должен сначала заточить свои инструменты» — Конфуций, «Аналитики Конфуция. Лу Лингун»
титульная страница > программирование > Эффективная реализация методов вставки многостроения с использованием PG-Promise

Эффективная реализация методов вставки многостроения с использованием PG-Promise

Опубликовано в 2025-04-16
Просматривать:248

How to Achieve Multi-Row Inserts with Efficiency Using pg-promise?

многорядные вставки с pg-promise

Решение:

предпочтительный подход в PG-Promise-использовать пространство имен помощников для высокой производительности и гибкости.

const {colunset, insert} = pgp.helpers; const cs = new ColumnSet (['col_a', 'col_b'], {table: 'tmp'}); const values ​​= [{col_a: 'a1', col_b: 'b1'}, {col_a: 'a2', col_b: 'b2'}]; const Query = insert (значения, CS); // => Вставка в "tmp" ("col_a", "col_b") values ​​('a1', 'b1'), ('a2', 'b2') watait db.none (Query);

const {ColumnSet, insert} = pgp.helpers;

const cs = new ColumnSet(['col_a', 'col_b'], {table: 'tmp'});
const values = [{col_a: 'a1', col_b: 'b1'}, {col_a: 'a2', col_b: 'b2'}];

const query = insert(values, cs);
// => INSERT INTO "tmp"("col_a","col_b") VALUES('a1','b1'),('a2','b2')

await db.none(query);

объект столбца должен быть создан статически для форматирования кэша для оптимальной производительности. вставлено.

SQL -инъекционная защита инъекции предоставляется с использованием пространства имен помощников в сочетании с именами SQL.
  • upplas:
, чтобы получить идентификатор каждой новой записи, приложение для возвращения к идентификатору к Query и выполнить его с Query и выполнить его с Query. db.many ().

] Для вставки больших наборов данных рассмотрите возможность использования функции импорта данных.

Последний учебник Более>

Изучайте китайский

Отказ от ответственности: Все предоставленные ресурсы частично взяты из Интернета. В случае нарушения ваших авторских прав или других прав и интересов, пожалуйста, объясните подробные причины и предоставьте доказательства авторских прав или прав и интересов, а затем отправьте их по электронной почте: [email protected]. Мы сделаем это за вас как можно скорее.

Copyright© 2022 湘ICP备2022001581号-3