Поддержка и жизненный цикл mssql-django

Пакет mssql-django — это официальная серверная часть базы данных Django, поддерживаемая Microsoft для SQL Server, База данных SQL Azure, Управляемый экземпляр SQL Azure и базы данных SQL в Microsoft Fabric. Он активно поддерживается на GitHub и выпущен через PyPI. На этой странице рассматривается управление версиями, совместимость платформ и политика поддержки.

Поддержка версий

Всегда используйте последний выпуск для получения новых функций, улучшений производительности и исправлений безопасности. Новые возможности добавляются только в текущий выпуск.

Текущая версия

Версия 2.0 — текущий общедоступный релиз (GA).

Important

Версия 2.0 требует mssql-python версии 1.15.0 или новее, даже если псевдоним базы данных использует pyodbc. Пакет устанавливается только на платформах с совместимым mssql-python дистрибутивом. Проекты на других платформах остаются на версии 1.8.0.

Определения состояния поддержки

Используйте эти значения состояния в таблице версий:

Статус Meaning
Текущая версия Получает новые функции, исправления ошибок и исправления безопасности.
Предыдущее Архивный релиз. Остается доступным, но не получает обновления.

История версий

Версия Дата выпуска Статус Версии Django Ключевые особенности
2.0 Сентябрь 2026 г. Текущая версия 5.2 - 6.1 Подключаемый по выбору mssql-python драйвер, Python 3.10–3.14, zoneinfo заменяет pytz, исправления MARS и inspectdb
1.8.0 Август 2026 г. Previous 3.2 - 6.1 Поддержка Django 6.1, quote_name изменение компилятора запросов, интроспекция внешнего ключа возвращает правило ON DELETE
1.7.4 Июль 2026 г. Previous 3.2 - 6.0 GROUP BY исправления для спрятанных %% литералав с реальными параметрами и для IntegerChoices параметров в сырых запросах
1.7.3 Июнь 2026 г. Previous 3.2 - 6.0 FA001 исправление для Authentication= режимов, отличных ActiveDirectoryMsiот подклассированных DatabaseWrapperKeyError исправлений (регрессия от 1.7.1)
1.7.2 Май 2026 г. Previous 3.2 - 6.0 Исправление часового пояса datetimeoffset, Now() исправление часового пояса, .explain() исправление совместимости
1.7.1 Апрель 2026 г. Previous 3.2 - 6.0 Исправление для базы данных SQL в Fabric, исправление нисходящего индекса AlterField
1.7 Март 2026 г. Previous 3.2 - 6.0 Поддержка Django 6.0, драйвер ODBC 18 по умолчанию, поддержка SQL Server 2025
1.6 Август 2025 г. Previous 3.2 - 5.2 Поддержка Django 5.1 и 5.2, улучшенная функциональность JSON
1.5 Апрель 2024 г. Previous 3.2 - 5.0 supports_comments флаг, AutoField исправления
1.4 Январь 2024 г. Previous 3.2 - 5.0 Поддержка Django 5.0, поддержка db_comment
1.3 Май 2023 г. Previous 3.2 - 4.2 Поддержка Django 4.2, с учетом регистра Replace
1.2 Декабрь 2022 г. Previous 3.2 - 4.1 Поддержка Django 4.1, поддержка часового пояса в JSONField Управляемый экземпляр SQL Azure
1.1 Июль 2022 г. Previous 3.2 - 4.0 Первоначальный выпуск с поддержкой Django 3.2 и 4.0

Версии до версии 1.1 были предварительно выпущены и не перечислены.

Important

Исправления и новые функции поставляются только в новых выпусках. Старые версии по-прежнему доступны на PyPI, но исправления в них задним числом не вносятся. Чтобы получить исправления ошибок или исправления системы безопасности, обновите его до последнего выпуска.

Подробные заметки о выпуске см. в статье "Новые возможности mssql-django".

Совместимость версий Django и Python

Каждый выпуск Django поддерживает определенные версии Python. mssql-django 2.0 тестирует следующие комбинации:

Версия Django Версии 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–5.1, а также Python 3.8 и 3.9 завершили поддержку и не тестировались. Проекты на этих версиях остаются на версии mssql-django 1.8.0.

Important

Всегда используйте поддерживаемую версию Python. Старые версии Python не получают обновления системы безопасности.

Совместимость SQL Server и Azure SQL

mssql-djangoВерсия 2.0 поддерживает все поддерживаемые версии Microsoft SQL. Новая основная версия SQL Server, которую бэкенд не распознаёт, подключается с помощью последнего набора возможностей, о которых знает бэкенд, а не проваливает проверку версии.

Продукт или служба Состояние поддержки
SQL Server полностью поддерживается.
SQL Server на Виртуальных машинах Microsoft Azure полностью поддерживается.
База данных SQL Azure полностью поддерживается.
Управляемый экземпляр Azure SQL полностью поддерживается.
База данных SQL в Fabric полностью поддерживается.
Хранилище данных Microsoft Fabric Только для подключений. В каталоге pyodbc задайте MARS_Connection=no в extra_params. Миграции Django и другие функции SQL Server не поддерживаются.
Azure Synapse Analytics Только для подключений. Миграции Django и другие функции SQL Server не поддерживаются.

Совместимость драйверов базы данных

mssql-djangoВерсия 2.0 подключается через один из двух драйверов базы данных Python, выбранных для каждого псевдонима. Для получения дополнительной информации см. Выберите драйвер базы данных для mssql-django.

Python-драйвер Состояние поддержки Connectivity
pyodbc Полностью поддерживается (по умолчанию) Microsoft ODBC Driver 17 или 18 для SQL Server, установлен отдельно
mssql-python Полностью поддерживается (включается с помощью параметра python_driver) Встроенный, без отдельной установки

Совместимость драйверов ODBC

Для пути pyodbc серверная часть по умолчанию использует ODBC Driver 18 для SQL Server и автоматически переключается на ODBC Driver 17, если версия 18 не установлена. Переопределите значение по умолчанию с помощью опции driver в конфигурации базы данных. Явная ценность не отступает.

Драйвер ODBC Состояние поддержки
Microsoft драйвер ODBC 18 для SQL Server Полностью поддерживается (по умолчанию)
Microsoft ODBC Драйвер 17 для SQL Server Полная поддержка (резервный вариант)
Драйвер ODBC FreeTDS Поддерживается по пути pyodbc

Путь mssql-python игнорирует этот driver вариант.

Инструкции по установке см. в разделе "Скачать драйвер ODBC для SQL Server".

Совместимость операционной системы

mssql-django Версия 2.0 требует mssql-python, поэтому пакет устанавливается только там, где существует совместимый mssql-python дистрибутив. Это требование действует даже тогда, когда каждый псевдоним базы данных использует pyodbc.

Операционная система Architecture Состояние поддержки
Windows 11, Windows Server 2019, 2022 и 2025 x64 Поддерживается
Windows 11, Windows Server 2022 и 2025 ARM64 Поддерживается с Python 3.11 и более поздними версиями
macOS 15 и более поздние версии Intel, Apple silicon Поддерживается
Linux с glibc 2.28 и новее, такими как Ubuntu 22.04 и 24.04, Debian 11 и 12, а также Red Hat Enterprise Linux 8 и 9 x64, ARM64 Поддерживается
Linux с версией musl 1.2 или новее, например, Alpine Linux x64, ARM64 Поддерживается
SUSE Linux Enterprise Server ARM64 Не поддерживаются

Проекты на неподдерживаемой платформе остаются на mssql-django версии 1.8.0, которая не требует mssql-python.

В пути pyodbc установите отдельно драйвер Microsoft ODBC для SQL Server. Этапы установки различаются в зависимости от операционной системы. Сведения об установке mssql-django для конкретной платформы см. в разделе "Установка mssql-django ".

Совместимость компонентов

В следующих таблицах перечислены функции Django и SQL Server и их состояние поддержки в серверной mssql-django части. Дополнительные сведения о неподдерживаемых функциях см. в разделе "Ограничения" и неподдерживаемые функции в mssql-django.

Функции Django ORM

Feature Поддержка mssql-django
Migrations Yes
QuerySet API-интерфейс Yes
JSONField Yes
bulk_create / bulk_update Yes
Транзакции базы данных Yes
inspectdb с --schema Yes
DISTINCT ON нет
__regex / __iregex Поиск Частично (требуется настройка сборки CLR; недоступна в База данных SQL Azure)
SmallAutoField Yes
select_for_update() Да (NOWAIT и SKIP_LOCKED; of не поддерживается)
Функции окна Yes
GeneratedField (вычисляемые столбцы) Да (Django 5.0 и более поздних версий)
CompositePrimaryKey Частично (Django 5.2 и более поздних версий; см. ограничения)
db_comment Да (Django 4.2 и более поздние версии)
Охватывающие индексы (include) Да (Django 4.2 и более поздние версии)
NthValue нет

Функции SQL Server

Feature Поддержка mssql-django
Зашифрованные подключения (TLS) Yes
Всегда зашифровано Yes
аутентификация Microsoft Entra Yes
Несколько активных результирующих наборов (MARS) Да, по пути pyodbc. Бэкенд поддерживает MARS, когда псевдоним использует драйвер Microsoft ODBC на Windows. Путь mssql-python никогда не активирует MARS и не принимает ключевое слово MARS_Connection.
Хранимые процедуры Да (через cursor.execute)
SNAPSHOT изоляция Да (требуется конфигурация уровня базы данных)
Маршрутизация только для чтения Yes

Требования к зависимости

Пакет mssql-django автоматически устанавливает следующие зависимости:

Зависимость Purpose Требуемая версия
Django Веб-платформа >=5.2,<6.2
pyodbc Стандартный драйвер базы данных ODBC для Python >=3.0
mssql-python Драйвер базы данных Python. Устанавливается безусловно и используется только при регистрации псевдонима. >=1.15.0
tzdata База данных часовых поясов IANA для модуля zoneinfo стандартной библиотеки, используемая там, где операционная система не предоставляет такую базу данных Any

Путь pyodbc также требует драйвера Microsoft ODBC для SQL Server на серверной системе. Для пути mssql-python не требуется отдельная установка драйвера ODBC. Дополнительные сведения см. в разделе "Установка mssql-django".

Политика для управления версиями и критических изменений

  • Основные версии (2.0): Можно менять поддерживаемые Python, Django, SQL Server и платформенную матрицу, а также добавлять или убирать зависимости. Резкие изменения появляются только в крупной версии.
  • Дополнительные версии (1.6, 1.7): включите поддержку новых версий Django, новые функции и исправления ошибок. Обеспечение обратной совместимости.
  • Версии патча (1.7.1, 1.7.2, 1.7.3, 1.7.4): Включайте только исправления ошибок.

Команда документирует критические изменения в заметках о выпуске. Сведения о новых возможностях mssql-django см. в заметках для конкретной версии.

Как оставаться в курсе

Серверная mssql-django часть выпускает новые версии для отслеживания выпусков Django. Проверьте наличие обновлений при обновлении Django.

Проверка установленной версии

Проверьте, какая версия установлена в данный момент:

pip show mssql-django

Обновление до последней версии

Обновите до последней версии:

pip install --upgrade mssql-django

Подписка на обновления

Получите поддержку

Microsoft оказывает поддержку через mssql-django, GitHub и каналы сообщества.

Проблемы с GitHub

Сообщите об ошибках и функциях запроса в GitHub:

Когда вы сообщаете о проблеме, указывайте версию Django, Python, SQL Server, драйвер базы данных Python и его версию, а также минимальное воспроизведение проблемы.

Contribute

Приветствуются вклады сообщества. Дополнительные сведения о Соглашении о лицензировании вкладов участников (CLA) и процессе отправки материалов см. в руководстве по участию в проекте.

Сообщество