Döngü İçinde Yazma (ARCH5052)
Anahtar go.orm.write-inside-loop · Önem error · Kategori orm
Döngünün her turunda ayrı bir Create/Save çağrısı yapmak, eleman başına bir DB gidiş-dönüşü demektir. Bunun yerine toplu (batch) yazma kullanın.
Hatalı
Bölüm başlığı “Hatalı”for _, u := range users { db.Create(&u) // her turda ayrı INSERT}db.CreateInBatches(users, 100)Düzeltme
Bölüm başlığı “Düzeltme”Döngü içindeki tekil persist çağrılarını CreateInBatches gibi tek bir toplu yazma işlemine dönüştürün.