これは、SQLServerデータベースへの一括挿入を実行できる関数です。
import pyodbc
import contextlib
def bulk_insert(table_name, file_path):
string = "BULK INSERT {} FROM '{}' (WITH FORMAT = 'CSV');"
with contextlib.closing(pyodbc.connect("MYCONN")) as conn:
with contextlib.closing(conn.cursor()) as cursor:
cursor.execute(string.format(table_name, file_path))
conn.commit()
これは間違いなく機能します。
更新:コメントと定期的なコーディングで、pyodbcはpypyodbcよりもサポートされていることに気づきました。
新しい更新:withステートメントが自動的に処理するため、conn.close()を削除します。