2016-05-05 2 views
2

Я пытаюсь вставить 800 наборов изменений, используя запрос MultiSERT INSERT с Ecto. Я использую postgres. Я вижу, что postgrex поддерживает это сейчас. Возможно ли еще с Ecto?Пакетная вставка с Ecto

Я также готов сделать это с помощью подготовленного заявления, если это возможно.

ответ

5

Ecto 2.0 поддерживает Repo.insert_all/3 (текущая последняя версия 2.0.0-rc.4, которая поддерживает это), но не поддерживает вставку наборов изменений, только сырые карты или списки ключевых слов, поэтому вам придется фильтровать все действительные изменения и извлечение полей из них сами, как вам нужно, если вы использовали функцию вставки вставки Postgrex.

+0

Спасибо! В качестве дополнительной заметки, это более прямой способ доступа к БД и не предлагает большинство удобств 'insert', таких как создание временных меток. –

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