Rumah > pangkalan data > tutorial mysql > Bagaimanakah Saya Boleh Memasukkan Data Secara Pukal dari Senarai ke dalam Pelayan SQL Menggunakan SqlBulkCopy dengan Cekap?

Bagaimanakah Saya Boleh Memasukkan Data Secara Pukal dari Senarai ke dalam Pelayan SQL Menggunakan SqlBulkCopy dengan Cekap?

Patricia Arquette
Lepaskan: 2024-12-30 13:44:18
asal
553 orang telah melayarinya

How Can I Efficiently Bulk Insert Data from a List into SQL Server Using SqlBulkCopy?

Memasukkan Data daripada Senarai Menggunakan SqlBulkCopy

Apabila berhadapan dengan tugas untuk melaksanakan pemasukan pukal menggunakan SqlBulkCopy daripada senarai generik, ia adalah lumrah untuk mempertimbangkan untuk melaksanakan IDataReader tersuai. Walau bagaimanapun, terdapat penyelesaian yang lebih cekap dan mudah menggunakan perpustakaan FastMember.

Penyelesaian dengan FastMember

FastMember menyediakan kelas berkuasa dipanggil ObjectReader yang memudahkan proses menukar senarai objek ke dalam pembaca data. Begini cara anda boleh menggunakannya:

using(var bcp = new SqlBulkCopy(connection))
using(var reader = ObjectReader.Create(data, "Id", "Name", "Description"))
{
    bcp.DestinationTableName = "SomeTable";
    bcp.WriteToServer(reader);
}
Salin selepas log masuk

Dalam contoh ini, data ialah senarai objek yang mengandungi sifat "Id," "Nama" dan "Penerangan."

ObjectReader boleh juga berfungsi dengan sumber data bukan generik, dan nama ahli tidak perlu dinyatakan terlebih dahulu. Walau bagaimanapun, jika anda tidak menyatakannya dalam ObjectReader, anda mungkin mahu menggunakan aspek ColumnMappings SqlBulkCopy untuk menentukan pemetaan antara sifat objek dan lajur destinasi.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Memasukkan Data Secara Pukal dari Senarai ke dalam Pelayan SQL Menggunakan SqlBulkCopy dengan Cekap?. 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