mssql-python 驅動程式是 Microsoft 官方的 Python 驅動程式,適用於 SQL Server、Azure SQL Database、Azure SQL 受控執行個體 以及 SQL 資料庫。Microsoft Fabric。 驅動程式在 GitHub 上持續維護,並透過 PyPI 發布。 本文將介紹版本控制、平台相容性及支援時程。
版本支援
務必使用最新版本以獲得新功能、效能提升及安全修正。 新功能只會新增至目前版本。
目前版本
1.11.0 版是目前正式推出(GA)的版本。
版本歷程記錄
| 版本 | 發行日期 | 狀態 | 重點功能 |
|---|---|---|---|
| 1.11.0 | 2026 年 7 月 | 現況 | 情境管理器提交/回滾、Apple Silicon 修正、服務主體批量複製修正 |
| 1.10.0 | 2026 年 6 月 | 上一個 | 使用 ActiveDirectoryServicePrincipal 進行批量複製,Arrow VARCHAR 修正 |
| 1.9.0 | 2026 年 6 月 | 上一個 | 以 Row 物件進行批量複製,改進 NULL 參數型別 |
| 1.8.0 | 2026 年 5 月 | 上一個 | 使用 ActiveDirectoryMSI 進行批量複製,列字串鍵索引 |
| 1.7.1 | 2026 年 5 月 | 上一個 | RHEL 8 輪組、更廣泛的並行與 Unicode 修正 |
| 1.6.0 | 2026 年 4 月 | 上一個 | 以解析器為基礎的連線字串淨化,修正連線/中斷連線的並行處理問題 |
| 1.5.0 | 2026 年 4 月 | 上一個 | Arrow fetch,sql_variant,原生 UUID |
| 1.4.0 | 2025年2月 | 上一個 | 批量複製支援(BCP) |
| 1.3.0 | 2025 年 1 月 | 上一個 | 設定類別,模組配置 |
| 1.2.0 | 2024年11月 | 上一個 | 結構發現方法 |
| 1.1.0 | 2024 年 9 月 | 上一個 | 客製化輸出轉換器 |
| 1.0.0 | 2024 年 7 月 | 上一個 | 最初的通用授權釋出 |
Important
只有目前版本(1.11.0)獲得新功能與錯誤修正。 先前版本仍能正常運作,但不會有更新。 升級到最新版本以獲得最佳體驗。
Python 版本相容性
mssql-python 驅動程式需要 Python 3.10 或更新版本。 如果你要開始一個新專案,建議在相容性矩陣中鎖定支援時間最長的 Python 版本。 如果你只能用較舊的 Python 版本(3.9 或更早),那就改用 pyodbc。
| Python 版本 | 支援狀態 |
|---|---|
| Python 3.14 | Supported |
| Python 3.13 | Supported |
| Python 3.12 | Supported |
| Python 3.11 | Supported |
| Python 3.10 | 最低支援 |
| Python 3.9 及更早版本 | 不支援 |
Important
一定要使用支援的 Python 版本。 舊版 Python 不會收到安全更新。
SQL Server 版本相容性
mssql-python 驅動程式使用 TDS 協定,並支援所有積極支援的 SQL Server 版本。
| SQL Server 版本 | 支援狀態 |
|---|---|
| 所有支援的 Microsoft SQL Server 版本 | 完全支援 |
Azure SQL 服務
| Service | 支援狀態 |
|---|---|
| Azure SQL Database | 完全支援 |
| Azure SQL 受控執行個體 | 完全支援 |
| Azure Synapse Analytics(專用集區) | Supported |
Microsoft Fabric
| 終點 | 支援狀態 |
|---|---|
| Fabric 中的 SQL 資料庫 | 完全支援 |
| Fabric 資料倉儲 | Supported |
| SQL 分析端點(Lakehouse) | Supported |
| SQL 分析端點(鏡像資料庫) | Supported |
作業系統相容性
mssql-python 驅動程式使用 DDBC(直接資料庫連接),且不需安裝 Microsoft ODBC 驅動程式。 移除外部相依性簡化了部署,尤其是在容器和 CI/CD 管線中。
| 作業系統 | Architecture | 支援狀態 |
|---|---|---|
| Windows 11 | x64、ARM64 | Supported |
| Windows Server 2019、2022、2025 | x64 | Supported |
| Ubuntu 22.04、24.04、26.04 | x64、ARM64 | Supported |
| Debian 11, 12 | x64、ARM64 | Supported |
| Red Hat Enterprise Linux 8, 9 | x64、ARM64 | Supported |
| macOS 14、15、26 | 英特爾、蘋果矽晶片(ARM64) | Supported |
| 阿爾卑斯Linux | x64 | Supported |
功能相容性
以下表格列出 SQL Server 功能及其在目前版本(1.11.0)mssql-python 驅動程式中的支援狀態。 如果你需要的功能不支援(例如Always Encrypted或MARS),可以考慮改用 pyodbc 。 關於早期版本新增的功能資訊,請參閱 MSSQL-Python 的新內容。
SQL Server 功能
| Feature | MSSQL-Python 支援 |
|---|---|
| 加密連線(TLS) | Supported |
| 永遠加密 | 不支援 |
| Microsoft Entra 認證 | Supported |
| 多個使用中結果集 (MARS) | 不支援 |
| 批量副本(BCP) | Supported |
| Apache Arrow 擷取 | Supported |
| sql_variant 資料行 | Supported |
| 原生 UUID | Supported |
| 連線韌性 | Supported |
| 唯讀路由 | Supported |
DB-API 2.0 合規性
| Feature | Support |
|---|---|
| 模組介面 | Compliant |
| 連接介面 | Compliant |
| 游標介面 | 大致上都很順從 |
| 型別物件 | Compliant |
| 例外狀況 | Compliant |
callproc() |
未實作 |
Note
這個 callproc() 方法沒有被實作。 使用搭配標準查詢方法的 EXECUTE 陳述式來呼叫預存程序。
依賴性要求
mssql-python 驅動程式的相依關係極少:
| 依賴性 | Purpose | 版本 |
|---|---|---|
| azure-identity | Microsoft Entra ID 認證 | 必要條件 (>= 1.12.0) |
mssql-python 驅動程式不需要安裝 Microsoft ODBC 驅動程式。
從 pyodbc 遷移
mssql-python 驅動程式簡化了部署(無需 ODBC 驅動),並提供內建連線池功能。 遷移時需要規劃的主要差異:
| 考慮事項 | Notes |
|---|---|
| 參數樣式 | PYODBC 使用 qmark 位置參數。 MSSQL-Python 預設使用 pyformat 命名參數,並支援 qmark 相容性。 |
| 行存取 | 兩者都支援屬性存取。 |
| 預存程序 | 使用 EXECUTE (不使用 callproc)。 |
| 連線池化 | mssql-python 驅動程式內建連線池功能。 |
詳細指引請參閱 從 pyodbc 遷移。
從 pymssql 遷移
pymssql 驅動程式已不再積極維護。 mssql-python 驅動程式提供了支援的替代方案,連接語法相似,但具備內建連線池與 Microsoft Entra 認證等現代功能。
| 考慮事項 | Notes |
|---|---|
| FreeTDS 依賴性 | 非必要。 mssql-python 驅動程式使用 DDBC。 |
| 連接參數 | 風格相似,但參數名稱不同。 |
| 行存取 | 兩者都支援字典式及屬性存取模式。 |
| 預存程序 | 使用 EXECUTE (不使用 callproc)。 |
詳細指引請參見「從 pymssql 遷移」。
重大變更政策
- 主要版本 (2.0、3.0):重大版本變更表示 API 變更會造成破壞。
- 次要版本 (1.4、1.5):加入新功能並維持向下相容性。
- 補丁版本 (1.4.1、1.4.2):僅包含錯誤修正。
團隊在發布說明中記錄重大變更並提供遷移指南。
如何保持最新
mssql-python 驅動程式經常釋出次要版本。 定期檢查更新,尤其是在正式部署前。
檢查已安裝的版本
請確認您目前安裝的驅動程式版本:
import mssql_python
print(mssql_python.__version__)
升級至最新版本
更新到最新版本以取得最新功能和安全修補。
pip install --upgrade mssql-python
訂閱更新
- 請關注 GitHub 倉庫。
- 請查看 PyPI 是否有新版本。
- 查看每個版本的更新日誌。
取得支援
GitHub 問題
回報錯誤並請求功能請至 GitHub:
Documentation
Community
- Stack Overflow:使用
mssql-python為問題加上標籤。 - GitHub 討論:用於一般提問與討論。