该mssql-python驱动程序是 Microsoft 官方的 Python 驱动,适用于 SQL Server、Azure SQL 数据库、Azure SQL 托管实例 以及 Microsoft Fabric 中的 SQL 数据库。 在Windows、Linux或macOS上使用PIP安装驱动。
先决条件
- 该驱动需要 Python 3.10 或更高版本,且不支持更早的 Python 版本。
- pip 包管理器(随 Python 3.4+ 附带)。
Important
mssql-python驱动使用 DDBC (直接数据库连接),该程序在内部捆绑和管理ODBC层。 你无需单独安装用于 SQL Server 的 Microsoft ODBC 驱动程序。
从 PyPI 安装
使用PIP安装驱动:
pip install mssql-python
升级现有安装:
pip install --upgrade mssql-python
安装特定版本:
pip install mssql-python==1.11.0
验证安装
安装后,请确认驱动是否正常工作:
import mssql_python
print(f"mssql-python version: {mssql_python.__version__}")
print(f"DB-API level: {mssql_python.apilevel}")
print(f"Thread safety: {mssql_python.threadsafety}")
print(f"Parameter style: {mssql_python.paramstyle}")
预期输出:
mssql-python version: 1.11.0
DB-API level: 2.0
Thread safety: 1
Parameter style: pyformat
特定于平台的注释
Windows操作系统
司机以预装轮子的形式发货,包含所有必要部件。
Linux
该驱动程序需要某些系统库以实现 Kerberos 认证和动态加载。 使用你发行版的包管理器安装它们:
Ubuntu/Debian:
sudo apt-get update
sudo apt-get install libltdl7 libkrb5-3 libgssapi-krb5-2
红帽/CentOS/Fedora:
sudo dnf install libtool-ltdl krb5-libs
注释
在 RHEL 8 和其他兼容 glibc 2.28 的发行版(AlmaLinux 8、Rocky Linux 8)上,驱动程序可通过发布到 PyPI 上的标准 manylinux_2_28 wheel 包进行安装。
Alpine Linux:
apk add libltdl krb5-libs
macOS
该驱动以 universal2 通用二进制文件的形式提供,可在 Apple Silicon(arm64)和 Intel(x86_64)Mac 上原生运行。 你不需要单独安装 UnixODBC。
驱动需要OpenSSL。 通过使用Homebrew安装:
brew install openssl
如果遇到 SSL 相关错误,请确保 OpenSSL 已正确链接:
export LDFLAGS="-L/opt/homebrew/opt/openssl/lib"
export CPPFLAGS="-I/opt/homebrew/opt/openssl/include"
虚拟环境
为避免冲突,建议在虚拟环境中安装 Python 包:
# Create a virtual environment
python -m venv .venv
# Activate it (Windows)
.venv\Scripts\activate
# Activate it (Linux/macOS)
source .venv/bin/activate
# Install the driver
pip install mssql-python
开发环境安装
要安装包含开发依赖项的驱动程序以参与该驱动程序的开发:
git clone https://github.com/microsoft/mssql-python.git
cd mssql-python
pip install -e ".[dev]"
解决安装问题
PIP安装失败,显示“无匹配发行版”
确保你使用的是 Python 3.10 或更高版本:
python --version
如果你用的是较旧的 Python 版本,建议升级 Python 或用 pyenv 管理多个版本。
安装后导入错误
如果你看到ModuleNotFoundError: No module named 'mssql_python',请确认你使用的是安装包的同一个 Python 环境。
pip show mssql-python
Linux/macOS 上的权限错误
如果遇到权限错误,请避免使用 sudo pip。 而应使用虚拟环境或 --user 标志。
pip install --user mssql-python