我正在使用 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 登录助手执行此操作。
为 SQL Server 安装 ODBC 驱动程序 13.1
https://www.microsoft.com/download/details.aspx?id=53339安装登录助手(链接已损坏)
http://go.microsoft.com/fwlink/?LinkId=234947测试连接
导入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/