首頁 >後端開發 >Python教學 >pyodbc 中的 Cursor#fast_executemany 如何加速 MS SQL Server 的批次插入?

pyodbc 中的 Cursor#fast_executemany 如何加速 MS SQL Server 的批次插入?

Susan Sarandon
Susan Sarandon原創
2024-11-03 04:42:02880瀏覽

How Can Cursor#fast_executemany in pyodbc Speed Up Bulk Inserts to MS SQL Server?

使用pyodbc 加速MS SQL Server 的批次插入:見解和解決方案

提高向MS SQL Server 批次插入的效率使用pyodbc的表,請考慮利用其Cursor#fast_executemany 功能的優勢。在版本 4.0.19 中引入,此功能優化了插入過程,顯著減少了執行時間。

當包含要插入的資料的CSV 檔案駐留在遠端客戶端而不是託管SQL Server 執行個體的本機電腦上時(或可存取的SMB/CIFS 網路位置),T-SQL BULK INSERT 指令可能不可行。在這種情況下,Cursor#fast_executemany 提供了一個引人注目的替代方案。

示範:

考慮將 1000 行資料插入「fast_executemany_test」表中的場景。使用預設設置,操作大約需要22 秒:

<code class="python">crsr.executemany(sql, params)</code>

透過簡單地啟用Cursor#fast_executemany via:

<code class="python">crsr.fast_executemany = True</code>

您可以將插入加速到僅1 秒,大幅削減執行時間受到一個重要因素的影響。利用此功能可以簡化批次插入並提高資料匯入任務的整體效能。

以上是pyodbc 中的 Cursor#fast_executemany 如何加速 MS SQL Server 的批次插入?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn