Я пытаюсь использовать pyodbc
для подключения к моей базе данных MSSQL, размещенной на Azure, и, хотя она работает локально, я не могу заставить ее работать, когда я отправляю изменения в Heroku. Я использую Windows. Это ошибка, которая мне дает:
pyodbc.Error: ('01000', "[01000] [unixODBC] [Driver Manager] Не удается открыть
lib 'Драйвер ODBC 13 для SQL Server': файл не найден (0)
(SQLDriverConnect) ")
Вот как я запускаю соединение:
cnxn = pyodbc.connect('DRIVER={ODBC Driver 13 for SQL Server};
SERVER=serverurl;
DATABASE=db;
UID=user;
PWD=password')
Это мой Aptfile, где я включил ссылку на скачивание драйвера для Heroku:
unixodbc
unixodbc-dev
python-pyodbc
libsqliteodbc
https://packages.microsoft.com/ubuntu/16.04/prod/pool/main/m/msodbcsql/msodbcsql_13.1.9.2-1_amd64.deb
И мой requirements.txt
:
...
pyodbc==4.0.24
У меня даже установлен buildpack-пакет (https://github.com/heroku/heroku-buildpack-apt). Насколько я понимаю, драйвер отсутствует на конце Heroku, и поэтому не может его найти.
Если это действительно так, как я могу заставить Heroku загрузить драйвер? Я попытался разместить ссылку на скачивание в Aptfile, как показано выше, но, похоже, она не работает.