首页 > 解决方案 > 使用 Python PYMSSQL 活动目录身份验证的 SQL Server 连接

问题描述

我正在尝试使用带有活动目录身份验证的 pymssql 包连接 SQL Server。下面是代码。

db = pymssql.connect(server=url, user=r'Domain\user', password=password, database=database)
cursor = db.cursor()

但它失败并出现以下错误:

错误(18452,b'登录失败。登录来自不受信任的域,不能用于 Windows 身份验证。DB-Lib 错误消息 20018,严重性 14:\n一般 SQL Server 错误:检查来自 SQL Server 的消息\nDB-Lib错误消息 20002,严重性 9:\n自适应服务器连接失败 ()\n')

Python版本:Python 3.8.6 PYMSSQL版本:pymssql 2.1.5

标签: sql-serveractive-directorywindows-authenticationpython-3.8pymssql

解决方案


不确定这会起作用。像这样试试。

# connect to SQL Server
import pyodbc
from sqlalchemy import create_engine

driver= '{SQL Server Native Client 11.0}'

conn_str = (
    r'DRIVER={SQL Server};'
    r'SERVER=your_server_name;'
    r'DATABASE=your_db_name;'
    r'Trusted_Connection=yes;'
)
cnxn = pyodbc.connect(conn_str)

cursor = cnxn.cursor()
cursor.execute('SELECT * FROM Employee')

# print contents of table
for row in cursor:
    print('row = %r' % (row,))

推荐阅读