임시 CSV 파일을 사용하여 MySQL에 DataTable 대량 복사
Microsoft SQL Server에서 MySQL로 마이그레이션할 때 대량 복사 문제가 발생할 수 있습니다. 직접 DataTable 쓰기를 사용하여 복사합니다. SqlBulkCopy 클래스는 MySQL에서 기본적으로 사용할 수 없지만 최적의 성능을 위해 임시 CSV 파일을 중개자로 사용하는 것을 고려해 볼 가치가 있습니다.
피해야 할 한 가지 가정은 CSV 파일을 통한 대량 로드가 본질적으로 성능 저하로 이어진다는 것입니다. 성능. 경험적 테스트에 따르면 MySqlBulkLoader 클래스를 사용하면 MySqlDataAdapter를 통한 직접 업데이트에 비해 삽입 시간을 크게 줄일 수 있는 것으로 나타났습니다.
이를 달성하려면 다음 단계를 따르세요.
새 MySqlBulkLoader 개체를 초기화하고 해당 속성을 설정합니다.
예제 코드:
<code class="csharp">string tempCsvFileSpec = @"C:\Users\Gord\Desktop\dump.csv"; using (StreamWriter writer = new StreamWriter(tempCsvFileSpec)) { Rfc4180Writer.WriteDataTable(rawData, writer, false); } var msbl = new MySqlBulkLoader(conn); msbl.TableName = "testtable"; msbl.FileName = tempCsvFileSpec; msbl.FieldTerminator = ","; msbl.FieldQuotationCharacter = '"'; msbl.Load(); System.IO.File.Delete(tempCsvFileSpec);</code>
MySQLBulkLoader 클래스와 임시 CSV 파일을 활용하면 DataTables를 효율적으로 대량 복사할 수 있습니다. 직접 업데이트에 비해 성능이 향상되었습니다.
위 내용은 임시 CSV 파일을 사용하여 MySQL로 DataTable 대량 복사를 최적화하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!