Data awal :
Dua SQL Server, yang berada dalam aksesibilitas langsung satu sama lain, salah satunya dikonfigurasi dengan Linked Server.
Permintaan SQL dari formulir:
insert into LocalDatabaseName.dbo.TableName (column1, column2, ..., columnN)
select column1, column2, ..., columnN
from LinkedServerName.RemoteDatabaseName.dbo.TableName
Tugas : menyalin catatan dari satu server ke server lain secepat mungkin
Menghadapi fakta bahwa kueri serupa sedang dieksekusi pada 40k (40.000) catatan selama lebih dari satu menit. Dengan peningkatan jumlah kueri tersebut atau jumlah rekaman, kinerja turun drastis dan tidak ada cara untuk mengoptimalkan kueri menggunakan alat SQL. Menggunakan aplikasi ImportExportDataSql , saya dapat mempercepat kueri ini menjadi 2 detik tanpa menggunakan Server Tertaut.
Saya membuat aplikasi ImportExportDataSql untuk diri saya sendiri dan terus menyempurnakannya selama beberapa tahun. Persyaratan utama untuk membuat aplikasi adalah portabilitas, bekerja di semua versi Windows tanpa menginstal perpustakaan pihak ketiga (kecuali untuk NET Framework 3.5), antarmuka yang sederhana dan kinerja tinggi.
ImportExportDataSql - konverter data universal, alternatif untuk "bcp"
( CSV Excel) ( CSV). bcp, . "bcp", , .
ImportExportDataSql , . :
ImportExportDataSql :
ImportExportDataSql.exe -ConnectionName=" " -TaskName=" 1" -TaskName=" 2" [-Log="C:\FolderName\LogFileName.log"]
:
-ConnectionName - , " " " "
-TaskName -
-Log - . . -, Logs\UserName\ImportExportDataSql.log
ImportExportDataSql
-
( bcp) - bcp ( bat )
- varbinary
SQL - SELECT SQL
SQL ( INSERT)
SQL ( UPDATE)
SQL
Excel SQL
CSV
CSV SQL
CSV
SQL - SQL
- SELECT
, SQL , . (, ).
( ) Linked Server, 1 2 . C# System.Data.SqlClient: SqlConnection, SqlDataReader, SqlCommand SqlBulkCopy.
OutOfMemoryException, (). , . , :
SQL - ,
:
- , " ", . (.) " " , .
- . , ( , )
- , . , 100 , " " = 10, 10 .
-
" " , . , , , (insert into ... select ...), , tempdb ( " " ).
ImportExportDataSql
ImportExportDataSql . .
, CSV Excel.
CSV ( 1) , CSV. CSV, .
SQL , , "Messages" SQL Server Management Studio.
" SQL" (jobs), , .
C# SqlBulkCopy , Linked Server.
Artikel "Quick Read CSV in C#" yang membahas tentang kekurangan "bcp"
Komunitas VK , bagi yang ingin mengobrol dengan penulis