Pyodbc INSERT FROM CSV перестал работать в Access: «Операция не поддерживается для этого типа объекта»Python

Программы на Python
Ответить
Anonymous
 Pyodbc INSERT FROM CSV перестал работать в Access: «Операция не поддерживается для этого типа объекта»

Сообщение Anonymous »

Недавно (по состоянию на ноябрь 2025 г.) у меня был рабочий SQL через pyODBC для импорта существующего файла CSV в таблицу в базе данных Access.

Код: Выделить всё

cursor.execute(f"""
INSERT INTO [{table_name}] ([Date], [Value], [Value2], [Year], [Month], [Day], [Value3])
SELECT [Date], [Value], [Value2], [Year], [Month], [Day], [Value3]
FROM [Text;Database={OUTPUT_PATH};HDR=YES].[{csv_file.name}]
""")
cnxn.commit()
Однако при повторном запуске того же метода сейчас, в декабре 2025 г., драйвер базы данных ODBC MS Access выдает ошибку о том, что эта операция не поддерживается для «данного типа объекта», см. ниже:

Ошибка: ('HY000', '[HY000] [Microsoft][ODBC Microsoft Access Driver] Операция не поддерживается для этого типа объекта. (-1001) (SQLExecDirectW)')

Прекратила ли Microsoft навсегда загрузку CSV/текстовых файлов в базы данных Access с помощью такого запроса или это проблема, специфичная для машины, которую я могу исправить?
Для контекста: среда, в которой я работаю, использует Python 3.13.9, pyodbc версии 5.3.0, MS Access DB Engine 2016 г., работаю под управлением Windows 11 и использую r'DRIVER={Microsoft Access Driver (*.mdb, *.accdb)};' в качестве драйвера.
В настоящее время я использую фрейм данных Pandas/

Код: Выделить всё

cursor.executemany()
в качестве обходного пути, однако, он на несколько порядков медленнее, а fast_executemany = True приводит к сбою моего ядра Python.
Заранее спасибо!

Подробнее здесь: https://stackoverflow.com/questions/798 ... ported-for
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Python»