Her er en funktion, der kan indsætte den største del af SQL Server-databasen.
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()
Dette virker helt sikkert.
OPDATERING:Jeg har bemærket ved kommentarerne, såvel som ved kodning regelmæssigt, at pyodbc er bedre understøttet end pypyodbc.
NY OPDATERING:fjern conn.close(), da with-sætningen håndterer det automatisk.