Ошибка при использовании fast_executemany = True в sql alchemy с драйвером = 'SQL + Server' - PullRequest
1 голос
/ 10 июля 2019

Я пытаюсь использовать fast_executemany для ускорения моей вставки df.to_sql.Я прочитал документацию и добавил ее в свой код следующим образом:

import pandas as pd
import sqlalchemy
import numpy as np
import random

#connect to database
server = 'Test'
database = 'Test'
driver = 'SQL+Server'
driver1 = 'ODBC+Driver+13+for+SQL+Server'
engine_stmt = ("mssql+pyodbc://@%s/%s?driver=%s" % (server, database, driver))

engine = sqlalchemy.create_engine(engine_stmt, fast_executemany=True)
connection = engine.connect()

Когда я запускаю этот код без fast_executemany, он работает, но для вставки требуется довольно много времени.Поэтому я хотел использовать команду, но я получаю ошибку при использовании ее с драйвером 'SQL+Server'.Поэтому я попытался изменить драйвер в соответствии с документацией на 'ODBC+Driver+13+for+SQL+Server' Я получаю следующую ошибку:

def create_connect_args(self, url):

InterfaceError: (pyodbc.InterfaceError) ('IM002', '[IM002] [Microsoft][ODBC Driver Manager] Data source name not found and no default driver specified (0) (SQLDriverConnect)')

Итак, я думаю, этот драйвер у меня не работает?Я протестировал несколько разных, но работает только один - 'SQL+Server'

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...