dukungan dan siklus hidup mssql-django

Paket mssql-django adalah backend basis data Django resmi yang didukung Microsoft untuk SQL Server, Azure SQL Database, Azure SQL Managed Instance, dan basis data SQL di Microsoft Fabric. Ini secara aktif dipertahankan pada GitHub dan dirilis melalui PyPI. Halaman ini mencakup penerapan versi, kompatibilitas platform, dan kebijakan dukungan.

Dukungan versi

Selalu gunakan rilis terbaru untuk mendapatkan fitur baru, peningkatan performa, dan perbaikan keamanan. Kemampuan baru hanya ditambahkan ke rilis saat ini.

Versi saat ini

Versi 2.0 adalah rilis ketersediaan umum (GA) saat ini.

Important

Versi 2.0 memerlukan mssql-python versi 1.15.0 atau lebih baru, bahkan ketika alias database menggunakan pyodbc. Paket ini hanya dapat diinstal pada platform yang memiliki distribusi yang kompatibel mssql-python . Proyek di platform lain tetap berada di versi 1.8.0.

Definisi status dukungan

Gunakan nilai status ini dalam tabel versi:

Status Meaning
Saat ini Menerima fitur baru, perbaikan bug, dan perbaikan keamanan.
Sebelumnya Rilis historis. Tetap tersedia tetapi tidak menerima pembaruan.

Riwayat versi

Versi Tanggal rilis Status Versi Django Fitur utama
2.0 September 2026 Saat ini 5.2 - 6.1 Driver opsional mssql-python, Python 3.10 - 3.14, zoneinfo menggantikan pytz, perbaikan untuk MARS dan inspectdb
1.8.0 Agustus 2026 Previous 3.2 - 6.1 Dukungan untuk Django 6.1, quote_name perubahan kompilator kueri, introspeksi kunci asing mengembalikan aturan ON DELETE
1.7.4 Juli 2026 Previous 3.2 - 6.0 GROUP BY perbaikan untuk literal yang dilepas %% dengan parameter nyata dan untuk IntegerChoices parameter dalam kueri mentah
1.7.3 Juni 2026 Previous 3.2 - 6.0 FA001 perbaikan untuk Authentication= mode selain ActiveDirectoryMsi, perbaikan subkelas DatabaseWrapperKeyError (regresi dari 1.7.1)
1.7.2 Mei 2026 Previous 3.2 - 6.0 perbaikan zona waktu datetimeoffset, Now() perbaikan zona waktu, .explain() perbaikan kompatibilitas
1.7.1 April 2026 Previous 3.2 - 6.0 perbaikan database SQL di Fabric, perbaikan AlterField untuk indeks menurun
1.7 Maret 2026 Previous 3.2 - 6.0 Dukungan Django 6.0, ODBC Driver 18 sebagai default, dukungan SQL Server 2025
1.6 Agustus 2025 Previous 3.2 - 5.2 Dukungan Django 5.1 dan 5.2, fungsionalitas JSON yang ditingkatkan
1.5 April 2024 Previous 3.2 - 5.0 supports_comments tandai, AutoField perbaikan
1.4 Januari 2024 Previous 3.2 - 5.0 Dukungan Django 5.0, dukungan db_comment
1.3 Mei 2023 Previous 3.2 - 4.2 Dukungan Django 4.2, peka terhadap huruf besar/kecil Replace
1.2 Desember 2022 Previous 3.2 - 4.1 Dukungan Django 4.1, dukungan zona waktu, JSONField pada Azure SQL Managed Instance
1.1 Juli 2022 Previous 3.2 - 4.0 Rilis awal dengan dukungan Django 3.2 dan 4.0

Versi sebelum 1.1 adalah pra-rilis dan tidak tercantum.

Important

Perbaikan dan fitur baru hanya dikirim dalam rilis baru. Versi lama tetap tersedia di PyPI tetapi tidak di-patch di tempatnya. Untuk mendapatkan perbaikan bug atau perbaikan keamanan, tingkatkan ke rilis terbaru.

Untuk catatan rilis terperinci, lihat Apa yang baru dalam mssql-django.

Kompatibilitas versi Django dan Python

Setiap rilis Django mendukung versi Python tertentu. mssql-django 2.0 menguji kombinasi berikut:

Versi Django Versi 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 sampai 5.1 dan Python 3.8 dan 3.9 sudah mencapai akhir dukungan dan belum diuji. Proyek pada versi tersebut tetap di versi mssql-django 1.8.0.

Important

Selalu gunakan versi Python yang didukung. Versi Python yang lebih lama tidak menerima pembaruan keamanan.

Kompatibilitas SQL Server dan Azure SQL

mssql-django2.0 mendukung setiap versi Microsoft SQL yang didukung. Versi mayor SQL Server yang lebih baru yang tidak dikenali oleh backend akan terhubung menggunakan kumpulan kapabilitas terbaru yang diketahui oleh backend, alih-alih gagal dalam validasi versi.

Produk atau Layanan Status dukungan
SQL Server Didukung sepenuhnya
SQL Server di Mesin Virtual Azure Didukung sepenuhnya
Azure SQL Database Didukung sepenuhnya
Azure SQL Managed Instance Didukung sepenuhnya
Basis data SQL dalam Fabric Didukung sepenuhnya
Gudang Microsoft Fabric Koneksi saja. Pada jalur MARS_Connection=no, tetapkan extra_params di pyodbc. Migrasi Django dan fitur SQL Server lainnya tidak didukung.
Azure Synapse Analytics Koneksi saja. Migrasi Django dan fitur SQL Server lainnya tidak didukung.

Kompatibilitas driver database

mssql-django2.0 terhubung melalui salah satu dari dua driver database Python, yang dipilih untuk setiap alias database. Untuk informasi lebih lanjut, lihat Pilih driver database untuk mssql-django.

driver untuk Python Status dukungan Connectivity
pyodbc Didukung penuh (default) Microsoft ODBC Driver 17 atau 18 untuk SQL Server, diinstal secara terpisah
mssql-python Didukung sepenuhnya (ikut serta dengan opsi python_driver) Terintegrasi, tanpa instalasi terpisah

Kompatibilitas driver ODBC

Pada jalur pyodbc, backend secara default menggunakan ODBC Driver 18 untuk SQL Server dan secara otomatis beralih ke ODBC Driver 17 jika versi 18 tidak terinstal. Timpa pengaturan default dengan opsi driver dalam konfigurasi database Anda. Nilai eksplisit tidak akan jatuh kembali.

pengandar ODBC Status dukungan
Microsoft ODBC Driver 18 untuk SQL Server Didukung penuh (default)
Microsoft ODBC Driver 17 untuk SQL Server Didukung penuh (fallback)
Driver FREETDS ODBC Didukung pada jalur pyodbc

mssql-python jalur mengabaikan opsi driver.

Untuk petunjuk penginstalan, lihat Mengunduh Driver ODBC untuk SQL Server.

Kompatibilitas sistem operasi

mssql-django 2.0 membutuhkan mssql-python, sehingga paket hanya diinstal jika distribusi kompatibel mssql-python ada. Persyaratan itu berlaku bahkan ketika setiap alias database menggunakan pyodbc.

Sistem operasi Architecture Status dukungan
Windows 11, Server Windows 2019, 2022, dan 2025 x64 Didukung
Windows 11, Windows Server 2022, dan 2025 ARM64 Didukung dengan Python 3.11 dan versi yang lebih baru
macOS 15 dan versi setelahnya Intel, Apple silicon Didukung
Linux dengan glibc 2.28 atau lebih baru, seperti Ubuntu 22.04 dan 24.04, Debian 11 dan 12, serta Red Hat Enterprise Linux 8 dan 9 x64, ARM64 Didukung
Linux dengan musl 1.2 atau lebih baru, seperti Alpine Linux x64, ARM64 Didukung
SUSE Linux Enterprise Server ARM64 Tidak didukung

Proyek di platform yang tidak didukung tetap di mssql-django 1.8.0, yang tidak memerlukan mssql-python.

Pada jalur pyodbc, instal Microsoft ODBC Driver untuk SQL Server secara terpisah. Langkah instalasi berbeda-beda tergantung sistem operasi. Lihat Menginstal mssql-django untuk penyiapan khusus platform.

Kompatibilitas fitur

Tabel berikut mencantumkan fitur Django dan SQL Server dan status dukungannya di mssql-django backend. Untuk detail selengkapnya tentang fitur yang tidak didukung, lihat Batasan dan fitur yang tidak didukung di mssql-django.

Fitur ORM Django

Fitur dukungan untuk mssql-django
Migrations Yes
QuerySet Antarmuka Pemrograman Aplikasi (API) Yes
JSONField Yes
bulk_create / bulk_update Yes
Transaksi database Yes
inspectdb dengan --schema Yes
DISTINCT ON No
__regex / __iregex pencarian Parsial (memerlukan penyiapan rakitan CLR; tidak tersedia pada Azure SQL Database)
SmallAutoField Yes
select_for_update() Ya (NOWAIT dan SKIP_LOCKED; of tidak didukung)
Fungsi jendela Yes
GeneratedField (kolom terhitung) Ya (Django 5.0 dan yang lebih baru)
CompositePrimaryKey Parsial (Django 5.2 dan yang lebih baru; lihat batasan)
db_comment Ya (Django 4.2 dan yang lebih baru)
Mencakup indeks (include) Ya (Django 4.2 dan yang lebih baru)
NthValue No

fitur SQL Server

Fitur dukungan untuk mssql-django
Koneksi terenkripsi (TLS) Yes
Selalu Terenkripsi Yes
Microsoft Entra otentikasi Yes
Beberapa Set Hasil Aktif (MARS) Ya, di jalur pyodbc. Backend mengaktifkan MARS ketika alias menggunakan driver Microsoft ODBC di Windows. Jalur mssql-python tidak akan pernah mengaktifkan MARS dan menolak kata kunci MARS_Connection.
Prosedur yang disimpan Ya (melalui cursor.execute)
SNAPSHOT Isolasi Ya (memerlukan konfigurasi tingkat database)
Perutean baca-saja Yes

Persyaratan dependensi

Paket mssql-django secara otomatis menginstal dependensi berikut:

Ketergantungan Kegunaan Versi yang diperlukan
Django Kerangka kerja web >=5.2,<6.2
pyodbc Driver database ODBC bawaan untuk Python >=3.0
mssql-python driver database Python Dipasang tanpa syarat, dan hanya digunakan ketika alias memilih untuk digunakan. >=1.15.0
tzdata Database zona waktu IANA untuk modul perpustakaan zoneinfo standar, digunakan di mana sistem operasi tidak menyediakannya Any

Jalur pyodbc juga memerlukan Microsoft ODBC Driver for SQL Server pada sistem host. mssql-python Jalur ini tidak memerlukan instalasi terpisah untuk driver ODBC. Untuk informasi selengkapnya, lihat Menginstal mssql-django.

Kebijakan tentang pembuatan versi dan perubahan yang menyebabkan kerusakan kompatibilitas

  • Versi utama (2.0): Dapat mengubah matriks Python, Django, SQL Server, dan platform yang didukung, serta dapat menambah atau menghapus dependensi. Perubahan yang merusak hanya muncul pada versi utama.
  • Versi minor (1.6, 1.7): Sertakan dukungan versi Django baru, fitur baru, dan perbaikan bug. Pertahankan kompatibilitas dengan versi sebelumnya.
  • Versi patch (1.7.1, 1.7.2, 1.7.3, 1.7.4): Hanya menyertakan perbaikan bug.

Tim mendokumentasikan perubahan yang menyebabkan inkompatibilitas di catatan rilis. Lihat Apa yang baru dalam mssql-django untuk catatan khusus versi.

Cara tetap terkini

Backend mssql-django merilis versi baru untuk melacak rilis Django. Periksa pembaruan saat memutakhirkan Django.

Periksa versi yang terinstal

Verifikasi versi mana yang saat ini diinstal:

pip show mssql-django

Tingkatkan ke versi terbaru

Perbarui ke rilis terbaru:

pip install --upgrade mssql-django

Berlangganan pembaruan

Dapatkan dukungan

Microsoft mendukung mssql-django melalui saluran GitHub dan komunitas.

Masalah GitHub

Laporkan bug dan fitur permintaan di GitHub:

Saat Anda melaporkan masalah, sertakan versi Django, versi Python, versi SQL Server, driver database Python dan versinya, serta reproduksi minimal masalah.

Contribute

Kontribusi komunitas dipersilakan. Untuk informasi selengkapnya tentang Perjanjian Lisensi Kontributor (CLA) dan proses pengiriman, lihat panduan berkontribusi.

Community