python - 无法使用 Active Directory 身份验证从 python 连接到 SQL Server

标签 python sql-server

我正在使用 pymssql 库将 python 连接到 Sql Server。我可以使用 windows/sql server 身份验证进行连接。我想使用 Active Directory 身份验证进行连接。

尝试了以下连接字符串。但它因错误而失败:

unexpected keyword authentication


conn = pymssql.connect(server='adventureworks.database.windows.net', authentication = 'Active Directory Password',user='username@server.com',password='Enterpasswordhere', database='dbo')

最佳答案

2019-11-01 更新:“登录助手”似乎是 Windows Essentials 的一部分,已被 discontinued并且不再可供下载。


如果您使用的是 Windows 计算机,则可以使用适用于 SQL Server 的 ODBC 驱动程序 13.1 和 Microsoft 登录助手执行此操作。

  1. 为 SQL Server 安装 ODBC 驱动程序 13.1
    https://www.microsoft.com/download/details.aspx?id=53339

  2. 安装登录助手(链接已损坏)
    http://go.microsoft.com/fwlink/?LinkId=234947

  3. 测试连接

    导入pyodbc
    server = 以windows.net结尾的服务器名
    数据库 = 数据库
    username = 用户名
    password = 密码
    表名 = 表名

    driver= '{SQL Server 的 ODBC 驱动程序 13}'
    cnxn = pyodbc.connect('DRIVER=' + driver +
    ';PORT=1433;SERVER=' + 服务器 +
    ';PORT=1443;DATABASE='+数据库+
    ';UID='+用户名+
    ';PWD='+密码+
    ';Authentication=ActiveDirectoryPassword')

    光标 = cnxn.cursor()
    cursor.execute("SELECT TOP 20 * from ” + tablename)
    row = cursor.fetchone()

    同时行:

    打印海峡(行[0])+“”+海峡(行[1])
    row = cursor.fetchone()

关于python - 无法使用 Active Directory 身份验证从 python 连接到 SQL Server,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40118470/

相关文章:

python - Django:关系 "django_site"在使用站点框架的 psql 应用程序中不存在

python - 当 allure-results 有多个结果文件夹时,Allure-report 为空

c# - ALTER TABLE DROP COLUMN 失败,因为一个或多个对象访问此列

sql-server - SQL Server 上的 Int PK 内部联接与 Guid PK 内部联接。执行计划

c# - 无法将 DateTime 隐式转换为 Timespan

sql - 替换 SQL Server 数据库中逗号分隔字符串中的值

java - 使用 shell 命令传递 Python/JAVA/Perl 选项

javascript - PhantomJS 的行为不同于 Firefox webdriver

sql-server - MS SQL RegEx 准确查找 6 个数字

python - 我应该使用 `==` 与 `(None, None)` 元组进行比较吗?