【问题标题】:Connecting to sqlalchemy Using Windows Authentication使用 Windows 身份验证连接到 sqlalchemy
【发布时间】:2020-09-30 14:41:30
【问题描述】:

我查看了sqlalchemy engine interface dialect 列出的文档,但看不到它在哪里说明如何执行此操作。

我知道我需要使用trusted_connection = 'yes',但我想知道它在哪里说这是我们需要做的。

有人能指点我正确的方向吗?

【问题讨论】:

    标签: python sql-server python-3.x sqlalchemy pyodbc


    【解决方案1】:

    我想通了。

    做什么:

    1) 使用DBAPI连接数据库,在我的例子中是pyodbc

    2) 您将传递的连接字符串将基于正在使用的驱动程序,在我的例子中是ODBC Driver 11 for SQL Server

    3) 在用于我的驱动程序的语法中,它明确表示使用trusted_connection='yes' 进行 Windows 身份验证。

    4) 您需要传递给create_engine 的值与您发送给正在使用的驱动程序的值相同。

    详情:

    1) 我在做什么:

    我正在使用pyodbc 访问 SQL Server。然后我使用sqlalchemy 来处理数据库。

    2) 在the documentation for SQLAlchemy 上找不到Trusted_connection = 'yes',因为它是连接字符串的一部分,而不是create_engine 的语法。

    3)Documentation for pyodbc and Connection Strings。 Pyodbc 不查看连接字符串。连接字符串未经修改地传递给数据库驱动程序,并且是特定于驱动程序的。 Documentation for Connecting to databases

    4) Reference for all connection strings 可以具体告诉您要连接到的每个数据库的连接字符串是什么样的。

    5) 不是我最初的问题的一部分,但也对此感到好奇:仅当连接到网络外部 SQL Server 时才需要端口号。 When is Port Number Required

    6) 在create engine documentation 中,它说 URL 是第一个位置参数,但是当您查看参数时,它没有指定这一点。我希望有人能证明我错了,但我确信这是真的。

    【讨论】:

      猜你喜欢
      • 2014-07-27
      • 2013-09-07
      • 2020-10-06
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-04-10
      相关资源
      最近更新 更多