Installare mssql-django

Il mssql-django pacchetto è il back-end ufficiale del database Django supportato Microsoft per SQL Server, database SQL di Azure, Istanza gestita di SQL di Azure e database SQL in Microsoft Fabric. Questo articolo illustra come installare il pacchetto e le relative dipendenze.

Prerequisiti

  • Python 3.10 fino a 3.14. Django 6.0 e versioni successive richiedono almeno Python 3.12.
  • gestione pacchetti pip (incluso in Python 3.4 e versioni successive)
  • Microsoft ODBC Driver 17 o 18 per SQL Server, per alias di database che utilizzano il driver predefinitopyodbc. Vedere Scaricare il driver ODBC per SQL Server.

Importante

mssql-django La versione 2.0 richiede mssql-python la versione 1.15.0 o successiva, anche quando ogni alias del database utilizza pyodbc. Il pacchetto si installa solo su piattaforme che hanno una distribuzione compatibile mssql-python . I progetti su altre piattaforme rimangono sulla versione 1.8.0. Per la lista delle piattaforme, vedi supporto e ciclo di vita mssql-django.

Installare da PyPI

Installa il pacchetto usando pip. Questo comando installa anche Django, pyodbc, mssql-python, e tzdata automaticamente:

pip install mssql-django

Per aggiornare un'installazione esistente:

pip install --upgrade mssql-django

Per installare una versione specifica:

pip install mssql-django==2.0.0

Compatibilità delle dipendenze e delle versioni

Per la mssql-django versione 2.0, i metadati del pacchetto includono questi vincoli di dipendenza:

Componente Indicazioni sulla versione
Python 3.10 fino a 3.14
Django >=5.2 e <6.2
pyodbc >=3.0
mssql-python >=1.15.0
tzdata Installato come dipendenza

Suggerimento

Lascia che pip risolva le versioni compatibili, a meno che non si abbia un file lock testato. L'aggiunta di una versione precedente pyodbc può causare problemi di runtime anche quando l'installazione ha esito positivo.

Scegli un driver di database

pyodbc è il driver predefinito e non necessita di configurazione. Per eseguire invece un alias del database su mssql-python, aggiungi "python_driver": "mssql_python" al dizionario OPTIONS di quell'alias. Gli alias possono usare driver diversi nello stesso progetto. Per le differenze di comportamento e le opzioni che ogni driver ignora, vedi Seleziona il driver del database per mssql-django.

Verificare l'installazione

Dopo l'installazione, verificare che il pacchetto sia installato correttamente:

pip show mssql-django

Output previsto:

Name: mssql-django
Version: 2.0.0
Summary: Django backend for Microsoft SQL Server

Verifica il livello ODBC utilizzato dal percorso predefinito pyodbc :

import pyodbc

print(f"pyodbc version: {pyodbc.version}")
print(f"Available ODBC drivers: {pyodbc.drivers()}")

Note

Il mssql-django backend viene configurato automaticamente nel sistema di instradamento del database di Django. Non importarlo direttamente nel codice dell'applicazione. Invece, imposta ENGINE su mssql nella configurazione DATABASES.

Usare un ambiente virtuale

Usare un ambiente virtuale Python per isolare le dipendenze del progetto:

python -m venv .venv

Attivare l'ambiente virtuale:

.venv\Scripts\activate

Quindi installa mssql-django all'interno dell'ambiente virtuale:

pip install mssql-django

Note specifiche della piattaforma

Gli alias di database che utilizzano il driver predefinito pyodbc necessitano di un driver ODBC installato separatamente, e i passaggi di installazione variano a seconda del sistema operativo. Gli alias che usano mssql-python non hanno bisogno di questi passaggi. Invece, installa i prerequisiti della piattaforma per mssql-python, inclusi OpenSSL su macOS e le librerie richieste su Linux.

Windows

Installare Microsoft ODBC Driver 18 per SQL Server usando il .msi programma di installazione da Download ODBC Driver for SQL Server.

Linux

Installare il driver ODBC usando la gestione pacchetti della distribuzione. Vedere Installare il driver Microsoft ODBC per SQL Server (Linux) per istruzioni specifiche della piattaforma.

macOS

Installare il driver ODBC con Homebrew:

brew tap microsoft/mssql-release https://github.com/Microsoft/homebrew-mssql-release
brew update
HOMEBREW_ACCEPT_EULA=Y brew install msodbcsql18

Dipendenze

Il mssql-django pacchetto installa automaticamente le dipendenze seguenti:

Package Purpose
Django Framework Web
pyodbc Driver di database ODBC predefinito per Python
mssql-python Driver di database Python con accesso attivo, installato incondizionatamente
tzdata Database dei fusi orari IANA per il modulo della libreria standard zoneinfo

Il backend converte i valori con fuso orario datetime utilizzando il modulo zoneinfo della libreria standard. zoneinfo legge il database dei fusi orari IANA del sistema operativo quando disponibile e, in caso contrario, utilizza il pacchetto tzdata, che copre Windows e le immagini di container minimali. pytz non è più una dipendenza.