pomoc techniczna i cykl życia bazy danych mssql-django

Pakiet mssql-django jest oficjalnym zapleczem bazy danych Django obsługiwanym Microsoft na potrzeby SQL Server, Azure SQL Database, Azure SQL Managed Instance i bazy danych SQL w Microsoft Fabric. Jest on aktywnie utrzymywany w GitHub i udostępniany za pośrednictwem interfejsu PyPI. Ta strona obejmuje przechowywanie wersji, zgodność platformy i zasady pomocy technicznej.

Obsługa wersji

Zawsze używaj najnowszej wersji, aby uzyskać nowe funkcje, ulepszenia wydajności i poprawki zabezpieczeń. Nowe możliwości są dodawane tylko do bieżącej wersji.

Bieżąca wersja

Wersja 2.0 to obecnie wydanie ogólnodostępne (GA).

Ważna

Wersja 2.0 wymaga mssql-python w wersji 1.15.0 lub nowszej, nawet gdy alias bazy danych korzysta z pyodbc. Pakiet instalowany jest tylko na platformach posiadających kompatybilną dystrybucję mssql-python . Projekty na innych platformach pozostają na wersji 1.8.0.

Definicje statusów pomocy technicznej

Użyj tych wartości stanu w tabeli wersji:

Status Meaning
Aktualny Odbiera nowe funkcje, poprawki błędów i poprawki zabezpieczeń.
Poprzedni Wydanie historyczne. Pozostaje dostępna, ale nie otrzymuje aktualizacji.

Historia wersji

Wersja Data wydania Status Wersje Django Kluczowe funkcje
2.0 Wrzesień 2026 r. Aktualny 5.2 - 6.1 Opcjonalny sterownik mssql-python, Python 3.10–3.14, zoneinfo zastępuje pytz, poprawki dotyczące MARS i inspectdb
1.8.0 Sierpień 2026 r. Wstecz 3.2 - 6.1 Wsparcie dla Django 6.1, quote_name zmiana kompilatora zapytań, introspekcja klucza obcego zwraca regułę ON DELETE
1.7.4 Lipiec 2026 r. Wstecz 3.2 - 6.0 GROUP BY Poprawki dla ucieczkowych %% literali z rzeczywistymi parametrami oraz dla IntegerChoices parametrów w surowych zapytaniach
1.7.3 Czerwiec 2026 r. Wstecz 3.2 - 6.0 FA001 poprawka dotycząca Authentication= trybów innych niż ActiveDirectoryMsi, poprawka podklasy DatabaseWrapperKeyError (regresja z wersji 1.7.1)
1.7.2 Maj 2026 r. Wstecz 3.2 - 6.0 poprawka strefy czasowej datetimeoffset, Now() poprawka strefy czasowej, .explain() poprawka zgodności
1.7.1 Kwiecień 2026 r. Wstecz 3.2 - 6.0 Poprawka bazy danych SQL w Fabric, poprawka indeksu malejącego w AlterField
1.7 Marzec 2026 r. Wstecz 3.2 - 6.0 Obsługa platformy Django 6.0, domyślny sterownik ODBC 18, obsługa SQL Server 2025
1.6 Sierpień 2025 r. Wstecz 3.2 - 5.2 Obsługa języka Django 5.1 i 5.2, ulepszona funkcja JSON
1.5 Kwiecień 2024 r. Wstecz 3.2 - 5.0 supports_comments flaga, AutoField poprawki
1.4 Styczeń 2024 Wstecz 3.2 - 5.0 Obsługa platformy Django 5.0, db_comment pomoc techniczna
1.3 Maj 2023 Wstecz 3.2 - 4.2 Obsługa Django 4.2, rozróżnianie wielkości liter Replace
1.2 Grudzień 2022 r. Wstecz 3.2 - 4.1 Obsługa platformy Django 4.1, obsługa JSONField stref czasowych w Azure SQL Managed Instance
1.1 Lipiec 2022 Wstecz 3.2 - 4.0 Wydanie początkowe z obsługą Django 3.2 i 4.0

Wersje wcześniejsze niż 1.1 miały status wersji wstępnych i nie zostały wymienione.

Ważna

Poprawki i nowe funkcje są dostarczane tylko w nowych wersjach. Starsze wersje pozostają dostępne w PyPI, ale nie są łatane na miejscu. Aby uzyskać poprawki błędów lub poprawki zabezpieczeń, uaktualnij do najnowszej wersji.

Aby uzyskać szczegółowe informacje o wydaniu, zobacz Co nowego w mssql-django.

Zgodność wersji Django i Python

Każda wersja Django obsługuje określone wersje Python. mssql-django 2.0 testuje następujące kombinacje:

Wersja Django Wersje języka 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 do 5.1 oraz Python 3.8 i 3.9 zakończyły wsparcie i nie są testowane. Projekty w tych wersjach pozostają w wersji mssql-django 1.8.0.

Ważna

Zawsze używaj obsługiwanej wersji Python. Starsze wersje Python nie otrzymują aktualizacji zabezpieczeń.

Kompatybilność SQL Server i Azure SQL

mssql-djangoWersja 2.0 obsługuje wszystkie obsługiwane wersje Microsoft SQL. Nowsza główna wersja SQL Server, której backend nie rozpoznaje, łączy się przy użyciu najnowszego zestawu obsługiwanych funkcji znanego backendowi, zamiast zakończyć się niepowodzeniem podczas weryfikacji wersji.

Produkt lub usługa Status wsparcia
SQL Server W pełni wspierane
SQL Server na maszynach wirtualnych Azure W pełni wspierane
Azure SQL Database W pełni wspierane
Azure SQL Managed Instance W pełni wspierane
Baza danych SQL na platformie Fabric W pełni wspierane
Microsoft Fabric Warehouse Tylko połączenia Na ścieżce pyodbc ustaw MARS_Connection=no w extra_params. Migracje Django i inne funkcje SQL Server nie są obsługiwane.
Azure Synapse Analytics Tylko połączenia Migracje Django i inne funkcje SQL Server nie są obsługiwane.

Kompatybilność sterowników bazy danych

mssql-django2.0 łączy się za pomocą jednego z dwóch sterowników bazy danych Python, wybranych dla każdego aliasu bazy danych. Więcej informacji można znaleźć w artykule Wybierz sterownik bazy danych dla mssql-django.

Sterownik Python Status wsparcia Connectivity
pyodbc W pełni obsługiwane (ustawienie domyślne) Sterownik Microsoft ODBC 17 lub 18 dla SQL Server, zainstalowany osobno
mssql-python W pełni obsługiwane (po wybraniu opcji python_driver) Wbudowane, bez osobnego montażu

Zgodność sterownika ODBC

Na ścieżce pyodbc backend domyślnie używa sterownika ODBC 18 dla SQL Server i automatycznie wraca do sterownika ODBC 17, jeśli wersja 18 nie jest zainstalowana. Zastąp ustawienie domyślne opcją driver w konfiguracji bazy danych. Wartość jawna nie cofa się.

sterownik ODBC Status wsparcia
Sterownik Microsoft ODBC 18 dla programu SQL Server W pełni obsługiwane (ustawienie domyślne)
Sterownik Microsoft ODBC 17 dla programu SQL Server W pełni obsługiwane (awaryjnie)
Sterownik FREETDS ODBC Obsługiwane w ścieżce pyodbc

Ścieżka mssql-python ignoruje opcję driver.

Aby uzyskać instrukcje dotyczące instalacji, zobacz Pobieranie sterownika ODBC dla SQL Server.

Zgodność systemu operacyjnego

mssql-django 2.0 wymaga mssql-python, więc pakiet instaluje się tylko tam, gdzie istnieje kompatybilna dystrybucja mssql-python . Ten wymóg obowiązuje nawet wtedy, gdy każdy alias bazy danych używa pyodbc.

System operacyjny Architecture Status wsparcia
Windows 11, Windows Server 2019, 2022 i 2025 x64 Supported
Windows 11, Windows Server 2022 i 2025 ARM64 Obsługiwane w Python 3.11 i nowszych wersjach
macOS 15 i późniejsze wersje Intel, Apple Silicon Supported
Linux z glibc 2.28 lub nowszymi, takimi jak Ubuntu 22.04 i 24.04, Debian 11 i 12 oraz Red Hat Enterprise Linux 8 i 9 x64, ARM64 Supported
Linux z wersją musl 1.2 lub nowszą, taki jak Alpine Linux x64, ARM64 Supported
SUSE Linux Enterprise Server ARM64 Niewspierane

Projekty na nieobsługiwanej platformie pozostają w wersji mssql-django 1.8.0, która nie wymaga mssql-python.

W ścieżce pyodbc zainstaluj osobno sterownik Microsoft ODBC Driver for SQL Server. Etapy instalacji różnią się w zależności od systemu operacyjnego. Zobacz Install mssql-django, aby uzyskać instrukcje konfiguracji specyficzne dla platformy.

Zgodność funkcji

Poniższe tabele przedstawiają funkcje Django i SQL Server oraz ich stan obsługi w backendzie mssql-django. Aby uzyskać więcej informacji na temat nieobsługiwanych funkcji, zobacz Ograniczenia i nieobsługiwane funkcje w programie mssql-django.

Funkcje Django ORM

Feature Obsługa mssql-django
Migrations Yes
QuerySet Interfejs Programowania Aplikacji (API) Yes
JSONField Yes
bulk_create / bulk_update Yes
Transakcje bazy danych Yes
inspectdb z --schema Yes
DISTINCT ON Nie.
__regex / __iregex wyszukiwania Częściowe (wymaga konfiguracji zestawu CLR; niedostępne w Azure SQL Database)
SmallAutoField Yes
select_for_update() Tak (NOWAIT oraz SKIP_LOCKED; of nieobsługiwane)
Funkcje okna Yes
GeneratedField (kolumny obliczane) Tak (Django 5.0 i nowsze)
CompositePrimaryKey Częściowe (Django 5.2 i nowsze; zobacz ograniczenia)
db_comment Tak (Django 4.2 i nowsze)
Indeksy pokrywające (include) Tak (Django 4.2 i nowsze)
NthValue Nie.

Funkcje programu SQL Server

Feature Obsługa mssql-django
Połączenia szyfrowane (TLS) Yes
Zawsze szyfrowane Yes
Uwierzytelnianie usługi Microsoft Entra Yes
Wiele aktywnych zestawów wyników (MARS) Tak, na ścieżce pyodbc . Zaplecze umożliwia MARS, gdy alias korzysta ze sterownika Microsoft ODBC na Windows. Ścieżka mssql-python nigdy nie włącza funkcji MARS i nie akceptuje słowa kluczowego MARS_Connection.
Procedury przechowywane Tak (za pośrednictwem cursor.execute)
SNAPSHOT izolacja Tak (wymaga konfiguracji na poziomie bazy danych)
Rutowanie tylko odczytu Yes

Wymagania dotyczące zależności

Pakiet mssql-django automatycznie instaluje następujące zależności:

Zależność Purpose Wymagana wersja
Django Struktura sieci Web >=5.2,<6.2
pyodbc Domyślny sterownik bazy danych ODBC dla Python >=3.0
mssql-python Sterownik bazy danych Python. Instalowane bezwarunkowo i używane tylko wtedy, gdy alias zostanie jawnie włączony. >=1.15.0
tzdata Baza danych stref czasowych IANA dla standardowego modułu biblioteki zoneinfo , używana tam, gdzie system operacyjny jej nie dostarcza Dowolny

Ścieżka pyodbc również wymaga zainstalowania w systemie hosta sterownika Microsoft ODBC Driver for SQL Server. Ścieżka mssql-python nie ma oddzielnej instalacji sterownika ODBC. Aby uzyskać więcej informacji, zobacz Instalowanie programu mssql-django.

Zasady dotyczące zmiany wersji i zmian powodujących niezgodność

  • Główne wersje (2.0): Mogą zmieniać obsługiwane macierze Python, Django, SQL Server oraz platformy oraz dodawać lub usuwać zależności. Zmiany przełomowe pojawiają się tylko w wersji głównej.
  • Wersje pomocnicze (1.6, 1.7): obejmują obsługę nowej wersji Django, nowe funkcje i poprawki błędów. Zachowaj zgodność z poprzednimi wersjami.
  • Wersje poprawek (1.7.1, 1.7.2, 1.7.3, 1.7.4): zawierają tylko poprawki błędów.

Zespół dokumentuje zmiany powodujące niezgodność w informacjach o wersji. Zobacz Co nowego w programie mssql-django , aby uzyskać informacje dotyczące wersji.

Jak być na bieżąco

Backend mssql-django publikuje nowe wersje, aby nadążyć za kolejnymi wydaniami Django. Sprawdź dostępność aktualizacji podczas uaktualniania platformy Django.

Sprawdzanie zainstalowanej wersji

Sprawdź, która wersja jest obecnie zainstalowana:

pip show mssql-django

Uaktualnianie do najnowszej wersji

Zaktualizuj do najnowszej wersji:

pip install --upgrade mssql-django

Subskrybowanie aktualizacji

Uzyskaj pomoc techniczną

Microsoft obsługuje mssql-django za pośrednictwem kanałów GitHub i społeczności.

Problemy z usługą GitHub

Zgłaszaj błędy i proś o nowe funkcje na GitHubie:

Gdy zgłaszasz problem, uwzględnij swoją wersję Django, wersję Python, wersję SQL Server, sterownik bazy danych Python i jego wersję oraz minimalne powtórzenie problemu.

Contribute

Wkład społeczności jest mile widziany. Aby uzyskać więcej informacji na temat Umowy licencyjnej współtwórcy (CLA) i procesu zgłaszania zmian, zapoznaj się z przewodnikiem dla współtwórców.

Community