supporto e ciclo di vita di 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. Viene gestita attivamente in GitHub e rilasciata tramite PyPI. Questa pagina illustra il controllo delle versioni, la compatibilità della piattaforma e i criteri di supporto.

Supporto delle versioni

Usare sempre la versione più recente per ottenere nuove funzionalità, miglioramenti delle prestazioni e correzioni per la sicurezza. Le nuove funzionalità vengono aggiunte solo alla versione corrente.

Versione corrente

La versione 2.0 è l'attuale versione di disponibilità generale (GA).

Importante

La versione 2.0 richiede mssql-python la 1.15.0 o successiva, anche quando un alias di 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.

Supportare le definizioni di stato

Usare questi valori di stato nella tabella delle versioni:

Condizione Meaning
Corrente Riceve nuove funzionalità, correzioni di bug e correzioni di sicurezza.
Precedente Versione cronologica. Rimane disponibile ma non riceve gli aggiornamenti.

Cronologia delle versioni

Versione Data di rilascio Condizione Versioni di Django Funzionalità principali
2.0 Settembre 2026 Corrente 5.2 - 6.1 Driver con opt-inmssql-python, Python 3.10 - 3.14, zoneinfo sostituisce pytz, MARS e correzioni di inspectdb
1.8.0 Agosto 2026 Previous 3.2 - 6.1 Supporto Django 6.1, quote_name modifica compilatore di query, introspezione della chiave esterna restituisce la regola ON DELETE
1.7.4 Luglio 2026 Previous 3.2 - 6.0 GROUP BY correzioni per i letterali %% con escape con parametri reali e per i parametri IntegerChoices nelle query grezze
1.7.3 Giugno 2026 Previous 3.2 - 6.0 FA001 correzione per Authentication= modalità diverse da ActiveDirectoryMsi, correzione sottoclassata DatabaseWrapperKeyError (regressione dalla versione 1.7.1)
1.7.2 Maggio 2026 Previous 3.2 - 6.0 correzione del fuso orario datetimeoffset, Now() correzione del fuso orario, .explain() correzione della compatibilità
1.7.1 Aprile 2026 Previous 3.2 - 6.0 Correzione del database SQL in Fabric, correzione dell'indice discendente in AlterField
1,7 Marzo 2026 Previous 3.2 - 6.0 supporto per Django 6.0, ODBC Driver 18 come predefinito, supporto per SQL Server 2025
1.6 Agosto 2025 Previous 3.2 - 5.2 Supporto di Django 5.1 e 5.2, funzionalità JSON avanzate
1.5 Aprile 2024 Previous 3.2 - 5.0 supports_comments flag, AutoField correzioni
1.4 Gennaio 2024 Previous 3.2 - 5.0 Supporto per Django 5.0, db_comment supporto
1.3 maggio 2023 Previous 3.2 - 4.2 Supporto di Django 4.2, con distinzione tra maiuscole e minuscole Replace
1.2 Dicembre 2022 Previous 3.2 - 4.1 Supporto di Django 4.1, supporto del fuso orario in JSONField Istanza gestita di SQL di Azure
1.1 Luglio 2022 Previous 3.2 - 4.0 Versione iniziale con supporto di Django 3.2 e 4.0

Le versioni precedenti alla versione 1.1 erano versioni preliminari e non sono elencate.

Importante

Le correzioni e le nuove funzionalità vengono fornite solo nelle nuove versioni. Le versioni precedenti rimangono disponibili in PyPI, ma non sono applicate patch. Per ottenere correzioni di bug o correzioni di sicurezza, eseguire l'aggiornamento alla versione più recente.

Per informazioni dettagliate sulla versione, vedere Novità di mssql-django.

Compatibilità delle versioni di Django e Python

Ogni versione django supporta versioni Python specifiche. mssql-django La versione 2.0 testa le seguenti combinazioni:

Versione di Django Versioni di Python
6.1 3.12, 3.13, 3.14
6.0 3.12, 3.13, 3.14
5,2 3.10, 3.11, 3.12, 3.13

Django 3.2 fino a 5.1 e Python 3.8 e 3.9 hanno raggiunto la fine del supporto e non sono stati testati. I progetti in quelle versioni restano alla versione mssql-django 1.8.0.

Importante

Usare sempre una versione di Python supportata. Le versioni precedenti Python non ricevono gli aggiornamenti della sicurezza.

Compatibilità tra SQL Server e Azure SQL

mssql-djangoLa versione 2.0 supporta tutte le versioni supportate di Microsoft SQL. Una versione principale più recente di SQL Server che il backend non riconosce si connette utilizzando il set di funzionalità più recente supportato dal backend, anziché causare un errore di convalida della versione.

Prodotto o servizio Stato del supporto
SQL Server supporto completo
SQL Server su Macchine Virtuali di Azure supporto completo
Database SQL di Microsoft Azure supporto completo
Istanza gestita di SQL di Azure (Istanza gestita di Azure SQL) supporto completo
Database SQL nell'ambiente Fabric supporto completo
Microsoft Fabric Warehouse Solo connessioni. Nel percorso pyodbc, imposta MARS_Connection=no in extra_params. Le migrazioni di Django e altre funzionalità di SQL Server non sono supportate.
Azure Synapse Analytics Solo connessioni Le migrazioni di Django e altre funzionalità di SQL Server non sono supportate.

Compatibilità dei driver di database

mssql-djangoLa versione 2.0 si collega tramite uno dei due driver database Python, selezionati per ciascun alias del database. Per ulteriori informazioni, vedi Seleziona il driver del database per mssql-django.

Driver Python Stato del supporto Connectivity
pyodbc Completamente supportato (impostazione predefinita) Driver ODBC Microsoft 17 o 18 per SQL Server, installato separatamente
mssql-python Completamente supportato (aderendo con l'opzione python_driver) Integrato, senza installazione separata

Compatibilità dei driver ODBC

Nel percorso pyodbc, il backend usa per impostazione predefinita ODBC Driver 18 for SQL Server e ripiega automaticamente su ODBC Driver 17 se la versione 18 non è installata. Sovrascrivi il valore predefinito con l'opzione driver nella configurazione del database. Un valore esplicito non torna indietro.

driver ODBC Stato del supporto
Microsoft ODBC Driver 18+ per SQL Server Completamente supportato (impostazione predefinita)
Microsoft ODBC Driver 17 per SQL Server Pienamente supportato (alternativa di riserva)
driver ODBC di FreeTDS Supportato nel percorso pyodbc

Il mssql-python percorso ignora l'opzione driver .

Per istruzioni di installazione, vedere Scaricare il driver ODBC per SQL Server.

Compatibilità del sistema operativo

mssql-django La versione 2.0 richiede mssql-python, quindi il pacchetto si installa solo dove esiste una distribuzione compatibile mssql-python . Questo requisito si applica anche quando ogni alias del database utilizza pyodbc.

Sistema operativo Architecture Stato del supporto
Windows 11, Windows Server 2019, 2022 e 2025 x64 Supported
Windows 11, Windows Server 2022 e 2025 ARM64 Supportato con Python 3.11 e versioni successive
macOS 15 e versioni successive Intel, Apple silicon Supported
Linux con glibc 2.28 o successiva, come Ubuntu 22.04 e 24.04, Debian 11 e 12, e Red Hat Enterprise Linux 8 e 9 x64, ARM64 Supported
Linux con musl 1.2 o versione successiva, come Alpine Linux x64, ARM64 Supported
SUSE Linux Enterprise Server ARM64 Non supportato

I progetti su una piattaforma non supportata rimangono sulla mssql-django 1.8.0, che non richiede mssql-python.

Nel percorso pyodbc, installa separatamente il driver Microsoft ODBC per SQL Server. I passaggi di installazione variano a seconda del sistema operativo. Vedere Installare mssql-django per la configurazione specifica della piattaforma.

Compatibilità delle funzionalità

Nelle tabelle seguenti sono elencate le funzionalità Django e SQL Server e il relativo stato di supporto nel mssql-django back-end. Per altri dettagli sulle funzionalità non supportate, vedere Limitazioni e funzionalità non supportate in mssql-django.

Funzionalità ORM di Django

Caratteristica / Funzionalità Supporto di mssql-django
Migrations Yes
API QuerySet Yes
JSONField Yes
bulk_create / bulk_update Yes
Transazioni di database Yes
inspectdb con --schema Yes
DISTINCT ON No
__regex / __iregex Ricerche Parziale (richiede l'installazione dell'assembly CLR; non disponibile in database SQL di Azure)
SmallAutoField Yes
select_for_update() Sì (NOWAIT e SKIP_LOCKED; of non supportato)
Funzioni finestra Yes
GeneratedField (colonne calcolate) Sì (Django 5.0 e versioni successive)
CompositePrimaryKey Parziale (Django 5.2 e versioni successive; vedere limitazioni)
db_comment Sì (Django 4.2 e versioni successive)
Indici di copertura (include) Sì (Django 4.2 e versioni successive)
NthValue No

Funzionalità di SQL Server

Caratteristica / Funzionalità Supporto di mssql-django
Connessioni crittografate (TLS) Yes
Sempre Crittografato Yes
Autenticazione Microsoft Entra Yes
Set di risultati attivi multipli (MARS) Sì, sul pyodbc sentiero. Il backend abilita MARS quando l'alias utilizza un driver Microsoft ODBC su Windows. Il mssql-python percorso non abilita mai MARS e rifiuta la MARS_Connection parola chiave.
Procedure memorizzate Sì (via cursor.execute)
SNAPSHOT Isolamento Sì (richiede la configurazione a livello di database)
Routing di sola lettura Yes

Requisiti di dipendenza

Il mssql-django pacchetto installa automaticamente le dipendenze seguenti:

Dipendenza Purpose Versione richiesta
Django Framework Web >=5.2,<6.2
pyodbc Driver di database ODBC predefinito per Python >=3.0
mssql-python Driver di database per Python. Installato incondizionatamente, e usato solo quando un alias si attiva attivamente. >=1.15.0
tzdata Database IANA del fuso orario per il modulo standard della libreria zoneinfo , usato dove il sistema operativo non ne fornisce uno Any

Il pyodbc percorso richiede anche il driver Microsoft ODBC per SQL Server sul sistema host. Il mssql-python percorso non ha un'installazione separata di driver ODBC. Per altre informazioni, vedere Installare mssql-django.

Criteri per il controllo delle versioni e le modifiche di rilievo

  • Versioni principali (2.0): Può modificare Python, Django, SQL Server e matrice della piattaforma supportata, e può aggiungere o rimuovere dipendenze. I cambiamenti improvvisi appaiono solo in una versione maggiore.
  • Versioni secondarie (1.6, 1.7): includere il supporto della nuova versione di Django, le nuove funzionalità e le correzioni di bug. Mantenere la compatibilità con le versioni precedenti.
  • Versioni patch (1.7.1, 1.7.2, 1.7.3, 1.7.4): Includono solo correzioni di bug.

Il team documenta le modifiche incompatibili nelle note di rilascio. Per le note specifiche della versione, vedere Novità di mssql-django .

Come rimanere aggiornati

Il mssql-django back-end rilascia nuove versioni per tenere traccia delle versioni di Django. Verificare la disponibilità di aggiornamenti durante l'aggiornamento di Django.

Controllare la versione installata

Verificare quale versione è attualmente installata:

pip show mssql-django

Eseguire l'aggiornamento alla versione più recente

Eseguire l'aggiornamento alla versione più recente:

pip install --upgrade mssql-django

Sottoscrivere gli aggiornamenti

Ottenere supporto

Microsoft supporta mssql-django tramite canali di GitHub e community.

Problemi di GitHub

Segnalare bug e richiedere funzionalità in GitHub:

Quando segnalate un problema, includete la versione Django, la versione Python, la versione SQL Server, il driver del database Python e la sua versione, e una riproduzione minima del problema.

Contribute

I contributi della comunità sono benvenuti. Per altre informazioni sul contratto di licenza collaboratore (CLA) e sul processo di invio, vedere la guida per i contributi.

Community