polyanin
@polyanin
Golang, PHP & Symfony developer

Как сделать bulk insert в GORM?

Приветствую!
Есть массив структур, которые надо записать в соответствующую таблицу базы данных с помощью GORM.
Сейчас я это делаю с помощью цикла и gorm DB.Create по одной.
Как сохранить их все сразу? DB.Create не принимает массив.
  • Вопрос задан
  • 764 просмотра
Решения вопроса 1
EvgenyMamonov
@EvgenyMamonov Куратор тега Go
Senior software developer, system architect
Можно использовать библиотеку https://github.com/t-tiger/gorm-bulk-insert

Если не хочется тянуть лишние зависимости в проект - можно обернуть цикл в транзакцию, это даст выигрыш в производительности близкий к нормальным bulk insert.

Примерно вот так:
tx.Begin()
for {
   DB.Create
}
tx.Commit()

Советую присмотреться вот к этой библиотеке https://jmoiron.github.io/sqlx/
Я её использую почти во всех проектах.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы
22 нояб. 2024, в 02:56
10000 руб./за проект
22 нояб. 2024, в 00:55
500 руб./за проект
21 нояб. 2024, в 23:30
300000 руб./за проект