polyanin
@polyanin
Golang, PHP & Symfony developer

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

Приветствую!
Есть массив структур, которые надо записать в соответствующую таблицу базы данных с помощью GORM.
Сейчас я это делаю с помощью цикла и gorm DB.Create по одной.
Как сохранить их все сразу? DB.Create не принимает массив.
  • Вопрос задан
  • 714 просмотров
Решения вопроса 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/
Я её использую почти во всех проектах.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы
19 апр. 2024, в 13:31
10000 руб./за проект
19 апр. 2024, в 13:12
35000 руб./за проект
19 апр. 2024, в 13:06
6000 руб./за проект