Итак ... У меня есть SSDT-проект, в котором я тестирую развертывания на экземпляре MSSQL Express 2017, который входит в стандартную комплектацию VS 2017. Теперь я хочу использовать этот же экземпляр для тестирования моих сценариев python ETL, поэтому я пытаюсь установить соединение ODBC.
К сожалению, MSSQL Express сопротивляется.
Я получаю следующую ошибку при попытке подключиться к моему локальному экземпляру через ODBC из интерпретатора python в VS:
Traceback (последний последний вызов):
Файл <stdin>
, строка 1, в <module>
pyodbc.OperationalError: ('08001', '[08001] [Microsoft] [Драйвер ODBC SQL Server] [DBNETLIB] SQL Server не существует или доступ запрещен. (17) (SQLDriverConnect); [08001] [Microsoft] [ODBC SQL Драйвер сервера] [DBNETLIB] ConnectionOpen (Connect ()). (53); [08001] [Microsoft] [Драйвер ODBC SQL Server] Недопустимый атрибут строки подключения (0) ')
Итак - проверьте настройки противопожарной стены и подключения, верно? Достаточно хорошо, поэтому я запускаю SQLServerManager14.msc и получаю:
Не быть побежденным - время его силы:
PS C:\WINDOWS\system32> $mc = New-Object -TypeName Microsoft.SqlServer.Management.Smo.Wmi.ManagedComputer
PS C:\WINDOWS\system32> $mc
ConnectionSettings : Microsoft.SqlServer.Management.Smo.Wmi.WmiConnectionInfo
Services : {}
ClientProtocols : {np, sm, tcp}
ServerInstances : {}
ServerAliases : {}
Urn : ManagedComputer[@Name='MDGJAMIE']
Name : MDGJAMIE
Properties : {}
UserData :
State : Existing
Хм, активных экземпляров нет, но это странно, потому что SSDT может развертываться на локальном экземпляре. Также SSMS может подключаться к локальному экземпляру.
Есть идеи, как заставить стандартную VS версию SQL Express работать без ошибок?