2016-09-25 2 views
-1

Я пользуюсь модулем pg (и обещанием версии pg-promise-strict).Есть ли способ сделать объемную вставку в Postgresql от node.js?

Когда мне нужно вставить записи 1к, я должен отправить серверу один за другим.

я не могу построить 1k записи INSERT, потому что моя организация политика: данные должны быть отосланы отдельно (как показаны в https://github.com/brianc/node-postgres/wiki/Client#method-query-parameterized)

Я пытаюсь написать plsql функции, которая делает объемную вставку и отправить все данные в массиве (или в строке, я стараюсь Boths):

client.query("select bulk_insert", [allTheData], cb); 

И я получаю следующее сообщение:

index row requires 38656 bytes, maximum size is 8191 

Примечания

  • База данных находится в другом сервере
  • Я только быть в состоянии соединиться с де Postgres порта
  • Я не в состоянии выполнить что-то вроде sh psql < "COPY..."

Как я могу делать объемную вставку, отправляя данные отдельно?

ответ

1

Я думаю, что вы должны взглянуть на плагин от того же автора, что и ваша клиентская библиотека базы данных: https://github.com/brianc/node-pg-copy-streams, которая точно сделана для команды COPY.

+0

от объекта json, а не файла! –

Смежные вопросы