Gorm-Bulk-Insert 是一个使用 GORM 实现批量插入的简单库,只需传递结构体切片即可完成操作,为需要高效数据导入的应用程序提供了便捷的解决方案。
Gorm批量插入库用于实现高效的数据批量处理功能。使用该库只需传递一片结构体即可进行批量插入操作,类似于常规的gorm用法。
当需要在数据库中保存大量记录时,一次执行多个记录的插入相比于逐一插入可以显著提高性能,这种技术被称为批量插入。尽管Gorm是广受开发人员欢迎的数据对象映射(ORM)工具之一,并提供了许多便利的功能,但它本身并未提供直接支持批量插入的操作。因此,该库应运而生以解决此问题。
安装方法如下:
```bash
$ go get github.com/t-tiger/gorm-bulk-insert/v2
```
同时,由于这个库依赖于gorm的存在,请确保也已经安装了gorm(如果还未安装的话)。
```bash
$ go get github.com/jinzhu/gorm
```
使用此库的方法非常简单:
```go
gormbulk.BulkInsert(db, sliceValue, 3000)
```
其中,第三个参数指定了每次批量插入的最大记录数。这主要是为了避免一次性处理过多数据而导致变量超出准备语句的限制。根据实际应用中的具体情况,建议设置为2000到3000条记录之间。
如需指定特定字段进行插入操作,则可以使用以下形式:
```go
gormbulk.BulkInsert(db, sliceValue, 3000, Name, Email)
```
这允许用户仅针对模型中的某些属性执行批量插入,而无需将整个结构体传递给函数。