Installare mssql-python

Il mssql-python driver è il driver Python ufficiale di Microsoft per SQL Server, database SQL di Azure, Istanza gestita di SQL di Azure e database SQL in Microsoft Fabric. Installa il driver su Windows, Linux o macOS usando pip.

Prerequisiti

  • Il driver richiede Python 3.10 o successivo e non supporta versioni precedenti di Python.
  • Gestore di pacchetti pip (incluso con Python 3.4+).

Importante

Il driver mssql-python utilizza DDBC (Direct Database Connectivity), che raggruppa e gestisce internamente il livello ODBC. Non è necessario installare separatamente il driver Microsoft ODBC per SQL Server.

Installare da PyPI

Installa il driver usando pip:

pip install mssql-python

Per aggiornare un'installazione esistente:

pip install --upgrade mssql-python

Per installare una versione specifica:

pip install mssql-python==1.11.0

Verificare l'installazione

Dopo l'installazione, verifica che il driver funzioni:

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

Output previsto:

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

Note specifiche della piattaforma

Windows

Il motore viene fornito come ruota preassemblata che include tutti i componenti necessari.

Linux

Il driver richiede alcune librerie di sistema per l'autenticazione Kerberos e il caricamento dinamico. Installali usando il gestore di pacchetti della tua distribuzione:

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

Su RHEL 8 e altre distribuzioni compatibili glibc 2.28 (AlmaLinux 8, Rocky Linux 8), il driver si installa dalla ruota standard manylinux_2_28 pubblicata su PyPI.

Alpine Linux:

apk add libltdl krb5-libs

macOS

Il driver viene fornito come un universal2 fat binary che gira nativamente sia su Apple Silicon (arm64) che su Mac Intel (x86_64). Non serve un'installazione separata di unixODBC.

Il driver richiede OpenSSL. Installalo usando Homebrew:

brew install openssl

Se incontri errori legati a SSL, assicurati che OpenSSL sia correttamente collegato:

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

Ambienti virtuali

Per evitare conflitti, installa pacchetti Python in un ambiente virtuale:

# 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

Installazione di sviluppo

Per installare il driver con dipendenze di sviluppo per contribuire al driver:

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

Risolvere i problemi di installazione

pip install non riesce con "nessuna distribuzione corrispondente trovata"

Assicurati di usare Python 3.10 o versione:

python --version

Se usi una versione più vecchia di Python, aggiorna Python o usa pyenv per gestire più versioni.

Errore di importazione dopo l'installazione

Se vediModuleNotFoundError: No module named 'mssql_python', verifica di usare lo stesso ambiente Python in cui hai installato il pacchetto.

pip show mssql-python

Errori relativi ai permessi su Linux/macOS

Se incontri errori di permesso, evita di usare sudo pip. Invece, usa un ambiente virtuale o la --user bandiera.

pip install --user mssql-python