Указано неверное значение для атрибута строки подключения - PullRequest
0 голосов
/ 10 февраля 2020
import pyodbc as po    

connection_string = """
driver=ODBC Driver 17 for SQL Server;
server=SHADOW-LN4F5NUO;
database=FBI_Crime_Data;
trusted_connection=True;
"""

connection = po.connect(connection_string)

Вывод:

Traceback (most recent call last):
  File "C:\Program Files\JetBrains\PyCharm 2019.3.1\plugins\python\helpers\pydev\pydevd.py", line 1434, in _exec
    pydev_imports.execfile(file, globals, locals)  # execute the script
  File "C:\Program Files\JetBrains\PyCharm 2019.3.1\plugins\python\helpers\pydev\_pydev_imps\_pydev_execfile.py", line 18, in execfile
    exec(compile(contents+"\n", file, 'exec'), glob, loc)
  File "C:\Users\Jack\Desktop\GitHub\FBI_Crime_Data_Analysis\main.py", line 133, in <module>
    import_file(file_location="data/ASR122016.TXT")
  File "C:\Users\Jack\Desktop\GitHub\FBI_Crime_Data_Analysis\main.py", line 122, in import_file
    export_dataframe_to_SQL_Server(df=df, table_name=table_name)
  File "C:\Users\Jack\Desktop\GitHub\FBI_Crime_Data_Analysis\main.py", line 40, in export_dataframe_to_SQL_Server
    connection = po.connect(connection_string)
pyodbc.OperationalError: ('08001', "[08001] [Microsoft][ODBC Driver 17 for SQL Server]Invalid value specified for connection string attribute 'trusted_connection' (0) (SQLDriverConnect)")
  • Имя сервера правильное.
  • Имя базы данных правильное
  • ODB C драйвер существует.
  • Windows Аутентификация в SSMS работает.

1 Ответ

1 голос
/ 10 февраля 2020

Согласно этой документации Microsoft , распознаваемыми значениями являются true, false, yes, no и sspi

pyodb c документация говорит, что вы можете использовать свою учетную запись Windows для аутентификации вместо имени пользователя / пароля, предоставив атрибут Trusted_Connection как: Trusted_Connection=yes

Таким образом, он выглядит как Строка соединений sql Сервер На странице показана строка подключения для библиотек. Net. Если вы щелкнете на любой из страниц для указанной c версии драйвера в разделе «Драйверы ODB C» (например, 17 или 13 или 11 ), показывает Trusted_Connection=yes

...