Я не был уверен, как назвать мой пост, если у вас есть идея получше, не стесняйтесь редактировать заголовок.
Я не использовал SQL Алхимию раньше и документацию, которую я просмотрел в следующих местах, не помогает:
Вот код, который я использую:
import sqlalchemy as sal
from sqlalchemy import create_engine
#Here are the parameters I am using:
- server = 'Q-20/fake_example'
- database = 'AdventureWorks2017'
- driver = 'ODBC Driver 17 for SQL Server'
- trusted_connection='yes'
DATABASE_CONNECTION = 'mssql+pyodbc://@server = ' + server + '/database = ' + database + '?trusted_connection = ' + trusted_connection + '&driver=' + driver
engine = sal.create_engine(DATABASE_CONNECTION)
Кажется, все это работает нормально, без каких-либо проблем; однако, когда я добавляю эту строку:
connection=engine.connect()
, я получаю следующее сообщение об ошибке:
sqlalchemy.ex c .OperationalError: (pyodb c .OperationalError) ('08001', '[08001] [Microsoft] [ODB C Driver 17 для SQL Server] Поставщик именованных каналов: не удалось открыть соединение с SQL сервером [53]. (53) (SQLDriverConnect); [08001] [Microsoft] [ODB C Driver 17 для SQL Server] Истекло время ожидания входа в систему (0); [08001] [Microsoft] [ODB C Driver 17 для SQL Server] Недопустимый атрибут строки подключения ( 0); [08001] [Microsoft] [ODB C Driver 17 для SQL Server] Произошла ошибка, связанная с сетью или спецификацией экземпляра c, при установке соединения с SQL сервером. Сервер не найден или недоступен. Проверьте правильность имени экземпляра и настройку сервера SQL для удаленных подключений. Для получения дополнительной информации см. SQL Серверную документацию. (53) ')
Я не уверен, что не так с тем, что я делаю, есть ли у кого-нибудь предложения?
То, что я пробовал до сих пор:
- Я подтвердил, что SQL Сервер настроен на разрешение удаленных подключений. Я выполнил эту проверку, следуя инструкциям здесь
- Удалил знак «@» перед сервером, но это только привело к тому же сообщению об ошибке.