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.
Artikel ini menjelaskan fitur, peningkatan, dan perubahan baru di setiap versi mssql-django backend database Django.
Versi 1.7.3
Tanggal rilis: Juni 2026
Versi 1.7.3 adalah rilis patch yang kompatibel dengan versi sebelumnya, dengan dua perbaikan pada koneksi dan runtime.
Pemulihan kesalahan perangkat lunak
-
FA001untukAuthentication=mode selainActiveDirectoryMsi: Sebelumnya, backend hanya melewatiTrusted_Connection=yesuntukActiveDirectoryMsi. Mode Entra lainnya yang tidak menyediakan nilaiUSER(misalnya,ActiveDirectoryIntegrated,ActiveDirectoryDefault,ActiveDirectoryDeviceFlow) tetap menerimaTrusted_Connection=yes, yang ditolak oleh driver ODBC dengan galatFA001(Cannot use Authentication option with Integrated Security option). Perbaikan ini mendeteksi nilaiAuthentication=eksplisit apa pun dengan pencocokan yang memperhatikan batas kata dan tanpa membedakan huruf besar dan kecil, serta melewatiTrusted_ConnectiondanIntegrated Security=SSPI. Penanganan kata sandi tidak berubah:SqlPassword, ,ActiveDirectoryPassworddanActiveDirectoryServicePrincipalterus mengirimPWD, sambilActiveDirectoryInteractiveterus menghilangkannya. -
KeyErrorpadaDatabaseWrapperyang disubkelaskan: propertisql_server_versiondanto_azure_sql_dbyang di-cache bergantung pada introspeksitype(self).__dict__terhadapcached_property, yang memunculkanKeyErrorsaat subkelasDatabaseWrapperpertama kali mengaksesnya (regresi yang diperkenalkan pada 1.7.1). Perbaikan menggunakan dict tingkat kelas eksplisit (_known_versions,_known_azures) yang diakses melaluiself., sehingga pencarian diselesaikan melalui MRO dan pembungkus subkelas bekerja dengan benar.
Versi 1.7.2
Tanggal rilis: Mei 2026
Versi 1.7.2 adalah rilis patch yang tetap kompatibel dengan versi sebelumnya, dengan perbaikan zona waktu dan kompatibilitas.
Pemulihan kesalahan perangkat lunak
-
.explain()Kompatibilitas untuk Django 4.0 dan yang lebih baru: Memperbaiki penanganan kompilator metadata penjelasan Django sehingga.explain()tidak lagi gagal denganAttributeErrorpada Django 4.0 dan yang lebih baru. Sistem backend kini mengikuti field explain yang sesuai dengan versinya dan memunculkanNotSupportedErrordengan benar saat diperlukan. - penanganan zona waktu pada datetimeoffset: Penguraian datetimeoffset telah diperbaiki sehingga offset zona waktu dipertahankan alih-alih dihapus. Datetime yang dikembalikan sekarang menyertakan zona waktu jika diharapkan.
-
Now()denganUSE_TZ=True: Memperbarui pembuatan SQL untukNow()menggunakan perilaku sadar zona waktu saat dukungan zona waktu diaktifkan, mencegah penyimpangan tanda waktu pada host SQL Server non-UTC.
Versi 1.7.1
Tanggal rilis: April 2026
Versi 1.7.1 adalah rilis patch yang tetap kompatibel dengan versi sebelumnya disertai perbaikan bug.
Pemulihan kesalahan perangkat lunak
-
FieldDoesNotExistsaat mengubah field dengan urutan indeks menurun: Memperbaiki_alter_field()dischema.pyagar menggunakanindex.fields_ordersalih-alihindex.fieldssaat menentukan nama field indeks. Kode sebelumnya meneruskan string field-with-ordering mentah (misalnya,"-pub_date") kemodel._meta.get_field(), yang menaikkanFieldDoesNotExist. Sekarang hanya nama kolom yang diekstrak, dan akhiran pengurutan dibuang dengan benar. -
Dukungan database SQL di Microsoft Fabric (EngineEdition 12): Mengenali database SQL di Fabric (
EngineEdition=12) sebagai edisi Azure. Sebelumnya, edisi engine Fabric tidak dikenali, sehinggato_azure_sql_dbmengembalikanFalsedan pemeriksaan feature-gate gagal. Perbaikan ditambahkanEDITION_AZURE_SQL_FABRIC=12ke_AZURE_EDITIONSdan memetakan Fabric ke versi SQL Server terbaru yang didukung.JSONField, fungsi hash, introspeksi kolasi, dan pembongkaran basis data pengujian kini berfungsi dengan benar di Fabric.
Versi 1.7
Tanggal rilis: Maret 2026
Sorotan
- Dukungan Django 6.0: Kompatibilitas penuh dengan Django 6.0, yang memerlukan Python 3.12 atau yang lebih baru. Semua perubahan API 6.0 ditangani secara transparan oleh backend.
-
Dukungan parsial
CompositePrimaryKey: Backend menambahkan dukungan parsial untuk Django 5.2CompositePrimaryKey. Perbandingan tuple terhadap subkueri memerlukan Django 5.2.4 atau versi yang lebih baru, dan beberapa kasus tepi terkait kunci komposit danJSONFieldmasih ada. Django 5.2 sendiri pertama kali didukung di mssql-django 1.6. - Dukungan SQL Server 2025: Telah divalidasi untuk SQL Server 2025.
- ODBC Driver 18 default: Backend sekarang menggunakan ODBC Driver 18 sebagai default untuk SQL Server, dengan fallback secara otomatis ke ODBC Driver 17 jika versi 18 tidak diinstal.
Catatan khusus versi
| Versi Django | Notes |
|---|---|
| Django 5.1 |
inspectdb dapat memeriksa tabel dengan kunci primer komposit, tetapi tidak menghasilkan definisi model lengkap untuk mereka. |
| Django 5.2 |
CompositePrimaryKey dukungan bersifat parsial. Perbandingan tuple terhadap subkueri memerlukan Django 5.2.4 atau yang lebih baru, dan beberapa migrasi ditambah JSONField kasus tepi tetap ada. |
| Django 6.0 | Memerlukan Python 3.12 atau yang lebih baru. Semua batasan 5.2 berlaku. |
Versi 1.6
Tanggal rilis: Agustus 2025
- Menambahkan dukungan Django 5.1 dan 5.2.
- Fungsionalitas JSON yang ditingkatkan dan kompatibilitas ke belakang.
- Infrastruktur pipeline yang ditingkatkan.
Versi 1.5
Tanggal rilis: April 2024
- Menambahkan feature flag
supports_commentsuntukdb_comments. - Perbaikan bug untuk
AutoField, pemformatan parameter, dan kueri skema.
Versi 1.4
Tanggal rilis: Januari 2024
- Menambahkan dukungan Django 5.0.
- Menambahkan dukungan
db_comment. - Perbaikan bug untuk konversi tanggal/waktu dan agregat kosong.
Versi 1.3
Tanggal rilis: Mei 2023
- Menambahkan dukungan Django 4.2.
- Menambahkan dukungan fungsi peka huruf besar/kecil
Replace. - Perbaikan bug untuk penanganan
OFFSETdan padding kiri.
Versi 1.2
Tanggal rilis: Desember 2022
- Menambahkan dukungan Django 4.1.
- Menambahkan dukungan zona waktu (datetimeoffset dengan
USE_TZ=True). - Menambahkan opsi
return_rows_bulk_insertuntuk pengambilan ID penyisipan massal. - Menambahkan dukungan SQL Server 2022.
- Menambahkan dukungan
JSONFielduntuk Azure SQL Managed Instance.
Versi 1.1
Tanggal rilis: Juli 2022
- Dukungan Django 3.2 dan 4.0.
- SQL Server 2016 dan yang lebih baru, serta dukungan Azure SQL Database.
- konektivitas berbasis
pyodbc.