sql >> Databasteknik >  >> RDS >> Sqlserver

grundläggande pyodbc bulkinsats

Här är en funktion som kan infoga bulk i 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()

Det här fungerar definitivt.

UPPDATERING:Jag har märkt vid kommentarerna, såväl som vid kodning regelbundet, att pyodbc stöds bättre än pypyodbc.

NY UPPDATERING:ta bort conn.close() eftersom with-satsen hanterar det automatiskt.



  1. Autogenererar svarsfil

  2. Hur kan jag använda MySQL-tilldelningsoperatorn(:=) i en inbyggd fråga i viloläge?

  3. Hur man automatiskt återförfrågar med LoaderManager

  4. Implementera en-till-noll-eller-en-relation i SQL Server