2017-07-26 48 views

回答

0

根據我的經驗,加載大量數據的最快方法是使用批量插入。這通常是從一個平面文件完成的,因此在執行批量插入之前,必須先將數據導出到文件。

如果你不喜歡平面文件的方法,另一種方法是編寫一個CLR例程。您可以使用SqlDataReader從存儲DataTable中的數據的表中讀取數據,然後使用SqlBulkCopy執行批量插入。這種方法的優點是可以使用緩衝系統來限制所需的內存。 SqlDataReader是高效的內存,它根據需要讀取行,然後從內存中刪除它們,但DataTable不是。因此,你爲自己設置了一個限制,比如說10,000行,並且每當DataTable達到此限制時,就執行SqlBulkCopy並刪除DataTable中的現有行並繼續執行下一批。

相關問題