Rumah > pembangunan bahagian belakang > C++ > Bagaimanakah Saya Boleh Memasukkan 2 Juta Baris dengan Cekap ke dalam Pelayan SQL?

Bagaimanakah Saya Boleh Memasukkan 2 Juta Baris dengan Cekap ke dalam Pelayan SQL?

Barbara Streisand
Lepaskan: 2025-01-21 14:46:11
asal
242 orang telah melayarinya

How Can I Efficiently Insert 2 Million Rows into SQL Server?

Selitkan kumpulan 2 juta baris data ke dalam pangkalan data SQL Server dengan cekap

Apabila memasukkan sejumlah besar data ke dalam pangkalan data SQL Server, mengoptimumkan proses pemasukan adalah penting. Artikel ini secara menyeluruh akan memperkenalkan cara terbaik untuk memasukkan 2 juta baris data dengan cekap.

Gunakan SqlBulkCopy

Kelas SqlBulkCopy sesuai untuk sisipan pukal. Ia dengan pantas memindahkan data daripada .NET DataTable atau IEnumerable terus ke dalam jadual SQL Server. Dengan memanfaatkan operasi berorientasikan data, ia memintas sisipan baris demi baris tradisional dan mengurangkan masa pemprosesan dengan ketara.

Langkah-langkah pelaksanaan

Untuk menggunakan SqlBulkCopy dengan berkesan, ikuti langkah berikut:

  1. Mewujudkan sambungan ke SQL Server.
  2. Buat contoh SqlBulkCopy, nyatakan nama jadual sasaran dan sebarang pilihan yang diingini (cth. pencetus).
  3. Buka sambungan.
  4. Gunakan kaedah WriteToServer() untuk memindahkan data.
  5. Tutup sambungan.

Berikut ialah contoh C#:

using (SqlConnection connection = new SqlConnection(connString))
{
    SqlBulkCopy bulkCopy = new SqlBulkCopy(connection, SqlBulkCopyOptions.TableLock | SqlBulkCopyOptions.FireTriggers, null);
    bulkCopy.DestinationTableName = tableName;
    connection.Open();
    bulkCopy.WriteToServer(dataTable);
    connection.Close();
}
Salin selepas log masuk

Kaedah lain

Jika set data disimpan dalam fail teks, pertimbangkan untuk membacanya menjadi Set Data dan menukarnya kepada XML menggunakan fungsi OpenXML. XML ini kemudiannya boleh dihantar ke pangkalan data untuk sisipan pukal. Walau bagaimanapun, pendekatan ini boleh memerlukan sumber memori yang ketara, terutamanya untuk set data yang besar.

Pertimbangan ingatan

Sila ambil perhatian bahawa memuatkan dan memasukkan 2 juta baris data mungkin menekankan memori sistem anda. Jika perlu, pertimbangkan untuk menggunakan pelayan dengan kapasiti memori yang mencukupi, atau teroka penyelesaian lain seperti penstriman data atau sisipan tambahan.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Memasukkan 2 Juta Baris dengan Cekap ke dalam Pelayan SQL?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

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