該mssql-python驅動程式是 Microsoft 官方的 Python 驅動程式,適用於 Microsoft Fabric SQL Server、Azure SQL Database、Azure SQL 受控執行個體 及 SQL 資料庫。 在 Windows、Linux 或 macOS 上使用 pip 安裝驅動程式。
先決條件
- 驅動程式需要 Python 3.10 或更新版本,且不支援較早的 Python 版本。
- pip 套件管理器(隨 Python 3.4+ 附帶)。
Important
mssql-python 驅動程式使用 DDBC (直接資料庫連接),該架構在內部整合並管理 ODBC 層。 你不需要另外安裝 Microsoft 的 SQL Server 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 作業系統
該驅動程式以預先建置的 wheel 套件形式提供,包含所有必要元件。
Linux
驅動程式需要特定的系統函式庫來進行 Kerberos 認證與動態載入。 使用你發行版的套件管理器安裝:
Ubuntu/Debian:
sudo apt-get update
sudo apt-get install libltdl7 libkrb5-3 libgssapi-krb5-2
Red Hat/CentOS/Fedora:
sudo dnf install libtool-ltdl krb5-libs
Note
在 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