Mssql-python installeren

De mssql-python driver is Microsoft's officiële Python-driver voor SQL Server, Azure SQL Database, Azure SQL Managed Instance en SQL database in Microsoft Fabric. Installeer de driver op Windows, Linux of macOS door pip of conda te gebruiken.

Prerequisites

  • De driver vereist Python 3.10 of later en ondersteunt geen eerdere Python-versies.
  • Gebruik om te installeren met pip de pakketbeheerder die bij Python wordt geleverd.
  • Gebruik voor de installatie de conda-pakketbeheerder.

Important

De mssql-python-driver gebruikt DDBC (Direct Database Connectivity), die de ODBC-laag intern bundelt en beheert. Je hoeft de Microsoft ODBC-driver voor SQL Server niet apart te installeren.

Installeren vanuit PyPI

Installeer de driver met pip:

pip install mssql-python

Een bestaande installatie bijwerken:

pip install --upgrade mssql-python

Een specifieke versie installeren:

pip install mssql-python==1.16.0

Het pip install mssql-python commando installeert ook twee companion-pakketten die de driver tijdens de uitvoering nodig heeft:

  • mssql-python-odbc levert de Microsoft ODBC Driver 18-binaries.
  • mssql-python-rs bevat de Rust-runtime die bulk copy en de opt-in mssql-odbc provider aanstuurt.

Vanaf versie 1.16.0 pint mssql-python de exacte versies van beide pakketten vast. Eerdere versies vereisen mssql-python-rsniet. Voor de vastzettingen per versie, zie Afhankelijkheidsvereisten.

Installeren vanuit conda

De driver is ook beschikbaar op het microsoft kanaal op Anaconda.org:

conda install -c microsoft mssql-python

Het conda-pakket is een zelfstandig pakket. Het bevat de Python-bindings, de ODBC-driverbinaries en de Rust-runtime, dus conda installeert één pakket in plaats van drie. Als u pip list in de omgeving uitvoert, worden mssql-python-odbc en mssql-python-rs nog steeds weergegeven, omdat het conda-pakket hun pakketmetadata bevat. Conda selecteert de build die past bij jouw platform en Python-versie, en beheert upgrades:

conda update -c microsoft mssql-python

Installeer de driver met conda of pip in een bepaalde omgeving, niet allebei.

Het conda-pakket heeft de volgende platformvereisten:

Platform Python-versies Requirement
Windows x64 3.10 tot en met 3.15 None.
Windows ARM64 3.12 tot en met 3.15 None.
Linux x64, Linux ARM64 3.10 tot en met 3.15 Glibc 2.34 en latere versies. Gebruik pip op Red Hat Enterprise Linux (RHEL) 8, Alpine Linux en andere distributies met een oudere glibc of met musl.
macOS Intel, macOS Apple Silicon 3.10 tot en met 3.15 macOS 15 en latere versies. Versleutelde verbindingen vereisen OpenSSL die op het systeem is geïnstalleerd, zoals beschreven in macOS. De driver laadt OpenSSL niet vanuit de Conda-omgeving.

De installatie controleren

Controleer na installatie of de driver werkt:

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}")

Verwachte uitvoer:

mssql-python version: 1.16.0
DB-API level: 2.0
Thread safety: 1
Parameter style: pyformat

Platformspecifieke notities

Windows

De bestuurder wordt geleverd als een kant-en-klaar wiel dat alle benodigde onderdelen bevat.

Linux

De driver vereist bepaalde systeembibliotheken voor Kerberos-authenticatie en dynamisch laden. Installeer ze met de pakketbeheerder van je distributie:

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

Opmerking

Op RHEL 8 en andere glibc 2.28-compatibele distributies (AlmaLinux 8, Rocky Linux 8) wordt de driver geïnstalleerd vanaf het standaardwiel manylinux_2_28 dat naar PyPI is gepubliceerd.

Alpine Linux:

apk add libltdl krb5-libs libstdc++

macOS

De driver wordt geleverd als een universal2 dikke binaire die native draait op zowel Apple Silicon (arm64) als Intel (x86_64) Macs. Je hebt geen aparte unixODBC-installatie nodig.

De driver vereist OpenSSL. Installeer het met Homebrew:

brew install openssl

Als je SSL-gerelateerde fouten tegenkomt, zorg er dan voor dat OpenSSL correct gekoppeld is:

export LDFLAGS="-L/opt/homebrew/opt/openssl/lib"
export CPPFLAGS="-I/opt/homebrew/opt/openssl/include"

Virtuele omgevingen

Om conflicten te voorkomen, installeer Python-pakketten in een virtuele omgeving:

# 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

Ontwikkelingsinstallatie

Om de driver met ontwikkelafhankelijkheden te installeren als u aan de driver wilt bijdragen:

git clone https://github.com/microsoft/mssql-python.git
cd mssql-python
pip install -e ".[dev]"

Installatieproblemen oplossen

pip install mislukt met "geen overeenkomende distributie"

Zorg dat je Python 3.10 of later gebruikt:

python --version

Als je een oudere Python-versie gebruikt, upgrade dan Python of gebruik pyenv om meerdere versies te beheren.

Importfout na installatie

Als je het zietModuleNotFoundError: No module named 'mssql_python', controleer dan dat je dezelfde Python-omgeving gebruikt waar je het pakket hebt geïnstalleerd.

pip show mssql-python

Fouten in de toestemmingen op Linux/macOS

Als je fouten in de toestemmingen tegenkomt, vermijd dan het gebruik van sudo pip. Gebruik in plaats daarvan een virtuele omgeving of de --user vlag.

pip install --user mssql-python