Rumah > pembangunan bahagian belakang > Golang > Bagaimanakah Saya Boleh Memasukkan Berbilang Baris Data dengan Cekap dalam Go?

Bagaimanakah Saya Boleh Memasukkan Berbilang Baris Data dengan Cekap dalam Go?

Mary-Kate Olsen
Lepaskan: 2024-12-22 07:36:10
asal
336 orang telah melayarinya

How Can I Efficiently Insert Multiple Data Rows in Go?

Sisipan Berbilang Data yang Cekap dalam Go

Dalam operasi pangkalan data, selalunya berfaedah untuk memasukkan berbilang baris data secara serentak atas sebab kecekapan. Go menyediakan beberapa kaedah untuk mencapai ini.

Satu pendekatan ialah menggunakan fungsi db.Sediakan untuk membuat pernyataan yang disediakan. Dengan menggunakan pernyataan yang disediakan, anda boleh mengelakkan suntikan SQL dan meningkatkan prestasi. Untuk memasukkan berbilang baris dalam satu pelaksanaan menggunakan pernyataan yang disediakan, ikuti langkah berikut:

  1. Buat rentetan SQL dengan pernyataan INSERT INTO dan ruang letak untuk nilai. Contohnya:
sqlStr := "INSERT INTO test(n1, n2, n3) VALUES (?, ?, ?)"
Salin selepas log masuk
  1. Buat kepingan peta untuk menyimpan data yang hendak dimasukkan:
data := []map[string]string{
   {"v1":"1", "v2":"1", "v3":"1"},
   {"v1":"2", "v2":"2", "v3":"2"},
   {"v1":"3", "v2":"3", "v3":"3"},
}
Salin selepas log masuk
  1. Lelaran di atas kepingan dan tambahkan nilai pada pernyataan yang disediakan pemegang tempat.
vals := []interface{}{}

for _, row := range data {
    vals = append(vals, row["v1"], row["v2"], row["v3"])
}
Salin selepas log masuk
  1. Memangkas koma terakhir daripada sqlStr adalah perlu untuk menyediakan pernyataan dengan betul:
//trim the last ,
sqlStr = sqlStr[0:len(sqlStr)-1]
Salin selepas log masuk
  1. Sediakan kenyataan dengan kemas kini sqlStr.
stmt, _ := db.Prepare(sqlStr)
Salin selepas log masuk
  1. Laksanakan pernyataan dengan nilai yang dikumpul:
res, _ := stmt.Exec(vals...)
Salin selepas log masuk

Dengan menggunakan pendekatan ini, anda boleh memasukkan berbilang baris data dengan cekap ke dalam pangkalan data sambil memastikan keselamatan dan mengurangkan bilangan pelaksanaan pangkalan data.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Memasukkan Berbilang Baris Data dengan Cekap dalam Go?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan