python - 使用 Python 在 Mac 上使用 Windows 身份验证访问 Microsoft SQL Server

标签 python sql-server macos windows-authentication

我无法确定从 Mac 通过 Windows 身份验证访问 SQL Server 数据库所需的配置步骤和代码。

在 Windows 机器上我可以使用下面的代码:

import getpass

import pypyodbc

cnxn_string = (r"DRIVER={ODBC Driver 13 for SQL Server};"
               r"SERVER=[Host]\[Instance];"
               r"DATABASE=[Database]"
               r"UID=[Domain]\[Username];"
               r"Trusted_Connection=yes;"% (getpass.getuser()))

cnxn = pypyodbc.connect(cnxn_string)

但在 Mac 上,我认为我需要重新输入我的用户名和密码。

如何在我的 mac 上通过 Windows 身份验证创建与 SQL Server 的类似 python 连接?我对任何 python 模块都持开放态度(不一定是 pypyodbc)。

最佳答案

使用 FreeTDS + pymssql 连接非常简单。

注意:我建议使用 FreeTDS 1.0+ 和 pymssql 2.2.0+ 因为有 compatibility issues with FreeTDS 1.0 and pymssql 2.1.3.

这是一个使用 pymssql 的例子:

import pymssql
pymssql.connect(server="myserver\\myinstance",
                user="mydomain\\myuser",
                password="mypassword",
                database="mydatabase")

注意:实例是使用反斜杠字符从服务器解析的,但我们需要对其进行转义,因为这也是转义字符。从用户解析 Active Directory 域也是如此。

关于python - 使用 Python 在 Mac 上使用 Windows 身份验证访问 Microsoft SQL Server,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44307818/

相关文章:

java - 如何将 Eclipse 项目从 Windows 导入到 Mac OS

Python - 使用反向计数器附加行号

Python:如果 __name__ == '__main__' 之后导入并初始化 Argparse?

sql-server - 使用 group by 在 2 个 SQL 查询之间进行减法

具有多个标题和多个计数的 sql 查询

macos - NSTableView 中预选行不起作用

Emacs 的 python 模式文档

python - 在 python pandas 中查找每个日期的字母计数

sql - 根据标准 SQL Server 将单列求和为多列

html - 在 Mac 上测试 IE 网页设计的最佳方式?