Ето функция, която може да направи групово вмъкване в база данни на SQL Server.
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.
НОВА АКТУАЛИЗАЦИЯ:премахнете conn.close(), тъй като изразът with обработва това автоматично.