mssql-django-Support und Lebenszyklus

Das mssql-django Paket ist das offizielle Microsoft unterstützte Django-Datenbank-Back-End für SQL Server, Azure SQL-Datenbank, Azure SQL Managed Instance und SQL-Datenbank in Microsoft Fabric. Es wird aktiv auf GitHub gepflegt und über PyPI freigegeben. Auf dieser Seite werden Versionsverwaltung, Plattformkompatibilität und Supportrichtlinie behandelt.

Versionsunterstützung

Verwenden Sie immer die neueste Version, um neue Features, Leistungsverbesserungen und Sicherheitsupdates zu erhalten. Neue Funktionen werden nur zur aktuellen Version hinzugefügt.

Aktuelle Version

Version 2.0 ist die aktuelle allgemein verfügbare GA-Version.

Important

Version 2.0 benötigt mssql-python 1.15.0 oder neuer, selbst wenn ein Datenbankalias verwendet pyodbc. Das Paket wird nur auf Plattformen installiert, die eine kompatible mssql-python Distribution haben. Projekte auf anderen Plattformen bleiben auf Version 1.8.0.

Definitionen des Supportstatus

Verwenden Sie diese Statuswerte in der Versionstabelle:

Status Bedeutung
Aktuell Empfängt neue Features, Fehlerbehebungen und Sicherheitsupdates.
Zurück Historische Version. Bleibt verfügbar, erhält aber keine Updates.

Versionsverlauf

Version Erscheinungsdatum Status Django-Versionen Wichtigste Funktionen
2.0 September 2026 Aktuell 5.2 - 6.1 Opt-in-mssql-pythonTreiber, Python 3.10–3.14, zoneinfo ersetzt pytz, MARS und inspectdb Fehlerbehebungen
1.8.0 August 2026 Previous 3.2 - 6.1 Django 6.1-Unterstützung, quote_name Änderung des Abfragecompilators, Fremdschlüssel-Introspektion gibt die ON-Regel DELETE zurück
1.7.4 Juli 2026 Previous 3.2 - 6.0 GROUP BY Korrekturen für maskierte %%-Literale mit echten Parametern und für IntegerChoices-Parameter in Rohabfragen
1.7.3 Juni 2026 Previous 3.2 - 6.0 FA001-Fix für Authentication=-Modi außer ActiveDirectoryMsi, Unterklassen DatabaseWrapperKeyError korrigiert (Regression gegenüber 1.7.1)
1.7.2 Mai 2026 Previous 3.2 - 6.0 Datetimeoffset-Zeitzonenkorrektur , Now() Zeitzonenkorrektur, .explain() Kompatibilitätskorrektur
1.7.1 April 2026 Previous 3.2 - 6.0 SQL-Datenbank in Fabric Fix, absteigender Index AlterField Fix
1.7 März 2026 Previous 3.2 - 6.0 Django 6.0-Unterstützung, ODBC-Treiber 18-Standard, SQL Server 2025-Unterstützung
1.6 August 2025 Previous 3.2 - 5.2 Django 5.1- und 5.2-Unterstützung, erweiterte JSON-Funktionalität
1.5 April 2024 Previous 3.2 - 5.0 supports_comments-Flag, AutoField-Fixes
1.4 Januar 2024 Previous 3.2 - 5.0 Django-5.0-Unterstützung, db_comment-Unterstützung
1.3 Mai 2023 Previous 3.2 - 4.2 Django 4.2-Unterstützung, Groß-/Kleinschreibung beachten Replace
1.2 Dezember 2022 Previous 3.2 - 4.1 Django 4.1-Support, Zeitzonenunterstützung, JSONField auf Azure SQL Managed Instance
1.1 Juli 2022 Previous 3.2 - 4.0 Erste Version mit Django 3.2- und 4.0-Support

Versionen vor 1.1 waren Vorabversion und werden nicht aufgeführt.

Important

Fixes und neue Features werden nur in neuen Versionen ausgeliefert. Ältere Versionen bleiben auf PyPI verfügbar, werden jedoch nicht gepatcht. Um Fehlerkorrekturen oder Sicherheitsupdates zu erhalten, führen Sie ein Upgrade auf die neueste Version durch.

Detaillierte Versionshinweise finden Sie unter What's new in mssql-django.

Django und Python Versionskompatibilität

Jede Django-Version unterstützt bestimmte Python Versionen. mssql-django 2.0 testet folgende Kombinationen:

Django-Version Python-Versionen
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 bis 5.1 sowie Python 3.8 und 3.9 haben das Ende des Supports erreicht und sind nicht getestet. Projekte auf diesen Versionen bleiben auf mssql-django Version 1.8.0.

Important

Verwenden Sie immer eine unterstützte Python Version. Ältere Python Versionen erhalten keine Sicherheitsupdates.

SQL Server- und Azure SQL-Kompatibilität

mssql-django2.0 unterstützt jede unterstützte Version von Microsoft SQL. Eine neuere SQL Server-Hauptversion, die das Backend nicht erkennt, verbindet sich unter Verwendung des neuesten dem Backend bekannten Funktionsumfangs, anstatt an der Versionsvalidierung zu scheitern.

Produkt oder Dienst Status der Unterstützung
SQL Server Vollständig unterstützt
SQL Server auf Azure-VMs Vollständig unterstützt
Azure SQL-Datenbank Vollständig unterstützt
Verwaltete Azure SQL-Instanz Vollständig unterstützt
SQL-Datenbank in Fabric Vollständig unterstützt
Microsoft Fabric Warehouse Nur Verbindungen. Im Pfad pyodbc setzen Sie MARS_Connection=no in extra_params. Django-Migrationen und andere SQL Server-Funktionen werden nicht unterstützt.
Azure Synapse Analytics Nur Verbindungen. Django-Migrationen und andere SQL Server-Funktionen werden nicht unterstützt.

Datenbanktreiber-Kompatibilität

mssql-django2.0 verbindet sich über einen von zwei Python-Datenbanktreibern, die für jedes Datenbankalias ausgewählt sind. Weitere Informationen finden Sie unter Select the database driver for mssql-django.

Python-Treiber Status der Unterstützung Connectivity
pyodbc Vollständig unterstützt (Standard) Microsoft ODBC Treiber 17 oder 18 für SQL Server, separat installiert
mssql-python Vollständig unterstützt (Anmeldung mit der Option python_driver ) Eingebaut, ohne separate Installation

ODBC-Treiberkompatibilität

Auf dem pyodbc Pfad setzt das Backend standardmäßig auf ODBC Driver 18 für SQL Server zurück und fällt automatisch auf ODBC Driver 17 zurück, wenn Version 18 nicht installiert ist. Überschreiben Sie die Standardfunktion mit der driver Option in Ihrer Datenbankkonfiguration. Für einen expliziten Wert erfolgt kein Fallback.

ODBC-Treiber Status der Unterstützung
Microsoft ODBC-Treiber 18 für SQL Server Vollständig unterstützt (Standard)
Microsoft ODBC-Treiber 17 für SQL Server Vollständig unterstützt (Fallback)
FreeTDS ODBC-Treiber Unterstützt auf dem pyodbc Pfad

Der Weg mssql-python ignoriert die driver Option.

Installationsanweisungen finden Sie unter "ODBC-Treiber herunterladen" für SQL Server.

Betriebssystemkompatibilität

mssql-django 2.0 erfordert mssql-python, sodass das Paket nur dort installiert wird, wo eine kompatible mssql-python Distribution existiert. Diese Anforderung gilt selbst dann, wenn jeder Datenbankalias pyodbc verwendet.

Betriebssystem Aufbau Status der Unterstützung
Windows 11, Windows Server 2019, 2022 und 2025 x64 Unterstützt
Windows 11, Windows Server 2022 und 2025 ARM64 Unterstützt mit Python 3.11 und neueren Versionen
macOS 15 und neuere Versionen Intel, Apple Silicon Unterstützt
Linux mit glibc 2.28 oder neuer, wie Ubuntu 22.04 und 24.04, Debian 11 und 12 sowie Red Hat Enterprise Linux 8 und 9 x64, ARM64 Unterstützt
Linux mit musl 1.2 oder neuer, wie Alpine Linux x64, ARM64 Unterstützt
SUSE Linux Enterprise Server ARM64 Nicht unterstützt

Projekte auf einer nicht unterstützten Plattform bleiben auf mssql-django 1.8.0, für die mssql-python nicht erforderlich ist.

Installieren Sie auf dem pyodbc Weg den Microsoft ODBC-Treiber für SQL Server separat. Die Installationsschritte variieren je nach Betriebssystem. Siehe Installieren von mssql-django für plattformspezifisches Setup.

Kompatibilität von Funktionen

In den folgenden Tabellen sind Django und SQL Server Features und deren Supportstatus im mssql-django Back-End aufgeführt. Weitere Informationen zu nicht unterstützten Features finden Sie unter Einschränkungen und nicht unterstützte Features in mssql-django.

Funktionen des Django-ORM

Merkmal mssql-django-Unterstützung
Migrations Yes
QuerySet-API Yes
JSONField Yes
bulk_create / bulk_update Yes
Datenbanktransaktionen Yes
inspectdb mit --schema Yes
DISTINCT ON No
__regex / __iregex Abfragen Teilweise (erfordert die Einrichtung einer CLR-Assembly; in Azure SQL-Datenbank nicht verfügbar)
SmallAutoField Yes
select_for_update() Ja (NOWAIT und SKIP_LOCKED; of nicht unterstützt)
Fensterfunktionen Yes
GeneratedField (berechnete Spalten) Ja (Django 5.0 und höher)
CompositePrimaryKey Teilweise (Django 5.2 und höher; siehe Einschränkungen)
db_comment Ja (Django 4.2 und höher)
Überdeckende Indizes (include) Ja (Django 4.2 und höher)
NthValue No

SQL Server Funktionen

Merkmal mssql-django-Unterstützung
Verschlüsselte Verbindungen (TLS) Yes
Immer Verschlüsselt Yes
Microsoft Entra-Authentifizierung Yes
MARS (Multiple Active Result Sets, mehrere aktive Resultsets) Ja, auf dem Pfad pyodbc. Das Backend aktiviert MARS, wenn der Alias einen Microsoft-ODBC-Treiber unter Windows verwendet. Der Pfad mssql-python aktiviert MARS niemals und lehnt das MARS_Connection Schlüsselwort ab.
Gespeicherte Prozeduren Ja (via cursor.execute)
SNAPSHOT Isolation Ja (erfordert Konfiguration auf Datenbankebene)
Schreibgeschütztes Routing Yes

Anforderungen an Abhängigkeiten

Das mssql-django Paket installiert automatisch die folgenden Abhängigkeiten:

Abhängigkeit Purpose Erforderliche Version
Django Webframework >=5.2,<6.2
pyodbc Standard-ODBC-Datenbanktreiber für Python >=3.0
mssql-python Python-Datenbanktreiber. Wird bedingungslos installiert und wird nur verwendet, wenn ein Alias zustimmt. >=1.15.0
tzdata IANA-Zeitzonendatenbank für das Standardbibliotheksmodul zoneinfo , die verwendet wird, wenn das Betriebssystem keine solche bereitstellt Any

Der Pfad pyodbc benötigt außerdem den Microsoft ODBC-Treiber für SQL Server auf dem Host-System. Der Pfad mssql-python hat keine separate ODBC-Treiberinstallation. Weitere Informationen finden Sie unter Installieren von mssql-django.

Richtlinie für Versionsverwaltung und Unterbrechung von Änderungen

  • Hauptversionen (2.0): Kann die unterstützte Python-, Django-, SQL Server- und Plattformmatrix ändern und Abhängigkeiten hinzufügen oder entfernen. Brechende Änderungen treten nur in einer Hauptversion auf.
  • Nebenversionen (1.6, 1.7): Fügen Sie neue Django-Versionsunterstützung, neue Features und Fehlerbehebungen ein. Beibehalten der Abwärtskompatibilität.
  • Patch-Versionen (1.7.1, 1.7.2, 1.7.3, 1.7.4): Enthalten nur Fehlerbehebungen.

Das Team dokumentiert die Änderungen in den Versionshinweisen. Schauen Sie sich die Neuerungen in mssql-django für versionsspezifische Notizen an.

So bleiben Sie auf dem neuesten Stand

Das mssql-django Backend stellt neue Versionen bereit, um mit den Django-Releases Schritt zu halten. Überprüfen Sie beim Upgrade von Django auf Updates.

Überprüfen der installierten Version

Überprüfen Sie, welche Version derzeit installiert ist:

pip show mssql-django

Upgrade auf die neueste Version

Aktualisieren Sie auf die neueste Version:

pip install --upgrade mssql-django

Abonnieren von Updates

Unterstützung erhalten

Microsoft unterstützt mssql-django über GitHub und Community-Kanäle.

GitHub-Probleme

Melden von Fehlern und Anfordern von Features für GitHub:

Wenn du ein Problem meldest, gib deine Django-Version, Python-Version, SQL Server-Version, den Python-Datenbanktreiber und deren Version sowie eine minimale Reproduktion des Problems an.

Contribute

Gemeinschaftsbeiträge sind willkommen. Weitere Informationen zum Lizenzvertrag für Mitwirkende (Contributor License Agreement, CLA) und zum Einreichungsprozess finden Sie im Leitfaden für Mitwirkende.

Community