Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
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
- Tonton repositori GitHub untuk pemberitahuan rilis.
- Periksa PyPI untuk rilis baru.
- Tinjau changelog untuk setiap rilis.
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
- Stack Overflow: Beri tag pertanyaan dengan
djangodansql-server. - Dokumentasi Django
- Pusat Pengembang Azure Python