gorm Prepared statement contains too many placeholders 问题
批量导入遇到一个mysql提示。修改成批量导入以后正常。
·
批量导入遇到一个mysql提示
Prepared statement contains too many placeholders
原语句:
func (s *QtPackingRepo) UploadExcel(sliceQtPacking []*model.QtPacking) (err error) {
err = s.data.db.Model(&model.QtPacking{}).Create(sliceQtPacking).Error
if err != nil {
s.log.Errorf("导入数据错误:%v", err)
return v1.ErrorUnknownError("%v", "导入数据错误~~")
}
return
}
修改成批量导入以后正常
func (s *QtPackingRepo) UploadExcel(sliceQtPacking []*model.QtPacking) (err error) {
for i := 0; i < len(sliceQtPacking); i += 1000 {
end := i + 1000
if end > len(sliceQtPacking) {
end = len(sliceQtPacking)
}
err := s.data.db.Model(&model.QtPacking{}).CreateInBatches(sliceQtPacking[i:end], len(sliceQtPacking[i:end])).Error
if err != nil {
s.log.Errorf("导入数据错误:%v", err)
return v1.ErrorUnknownError("%v", "导入数据错误~~")
}
}
//if err != nil {
// s.log.Errorf("导入数据错误:%v", err)
// return v1.ErrorUnknownError("%v", "导入数据错误~~")
//}
return
}
更多推荐




所有评论(0)