Catatan rilis untuk Driver Microsoft JDBC untuk SQL Server
Artikel ini mencantumkan rilis Driver Microsoft JDBC untuk SQL Server. Untuk setiap versi rilis, perubahan diberi nama dan dijelaskan.
12.8
Unduh Microsoft JDBC Driver 12.8.0 untuk SQL Server (zip)
Unduh Microsoft JDBC Driver 12.8.0 untuk SQL Server (tar.gz)
Nomor rilis: 12.8.0
Dirilis: 31 Juli 2024
Jika Anda perlu mengunduh driver dalam bahasa selain yang terdeteksi untuk Anda, Anda dapat menggunakan tautan langsung ini.
Untuk driver dalam file zip: Cina (Disederhanakan) | Cina (Tradisional) | Inggris (Amerika Serikat) | Prancis | Jerman | Italia | | Portugis Korea | (Brasil) | Spanyol Rusia |
Untuk driver dalam file tar.gz: Cina (Sederhana) | Cina (Tradisional) | Inggris (Amerika Serikat) | Prancis | Jerman | Italia | | Portugis Korea | (Brasil) | Spanyol Rusia |
12.8 Kepatuhan
Perubahan kepatuhan | Detail |
---|---|
Unduh pembaruan terbaru untuk JDBC Driver 12.8. | • GitHub, 12.8.0 • Maven Tengah |
Sepenuhnya mematuhi Spesifikasi JDBC API 4.2. | Jar dalam paket 12.8 dinamai sesuai dengan kompatibilitas versi Java. Misalnya, file mssql-jdbc-12.8.0.jre11.jar dari paket 12.8 harus digunakan dengan Java 11 (atau lebih tinggi). |
Kompatibel dengan Java Development Kit (JDK) versi 22.0, 21.0, 17.0, 11.0, dan 1.8. | Microsoft JDBC Driver 12.8 untuk SQL Server sekarang kompatibel dengan Java Development Kit (JDK) versi 22.0 selain JDK 21.0, 17.0, 11.0 dan 1.8. |
12.8 Rilis
Unduh Microsoft JDBC Driver 12.8.0 untuk SQL Server (zip)
Unduh Microsoft JDBC Driver 12.8.0 untuk SQL Server (tar.gz)
Nomor rilis: 12.8.0
Dirilis: 31 Juli 2024
Jika Anda perlu mengunduh driver dalam bahasa selain yang terdeteksi untuk Anda, Anda dapat menggunakan tautan langsung ini.
Untuk driver dalam file zip: Cina (Disederhanakan) | Cina (Tradisional) | Inggris (Amerika Serikat) | Prancis | Jerman | Italia | | Portugis Korea | (Brasil) | Spanyol Rusia |
Untuk driver dalam file tar.gz: Cina (Sederhana) | Cina (Tradisional) | Inggris (Amerika Serikat) | Prancis | Jerman | Italia | | Portugis Korea | (Brasil) | Spanyol Rusia |
Fitur baru di 12.8
Fitur | Detail |
---|---|
Dukungan Java 22 | Driver sekarang kompatibel dengan Java Development Kit (JDK) versi 22.0 selain JDK 21.0, 17.0, 11.0 dan 1.8. |
Menambahkan penembolokan kredensial saat menggunakan Kredensial Identitas Terkelola atau Kredensial Azure Default | Izinkan penembolokan kredensial yang disebutkan untuk meningkatkan performa dan keandalan driver. |
Izinkan penembolokan SQLServerBulkCopy objek saat menggunakan bulkcopy untuk sisipan batch |
Mengganti perilaku sebelumnya, di mana setiap panggilan executeBatch() menghasilkan objek baru SQLServerBulkCopy , dengan menyimpan cache objek sebagai gantinya. |
Menambahkan penembolokan tingkat koneksi untuk metadate kolom tujuan secara massal | Meningkatkan performa dengan menambahkan penembolokan di tingkat koneksi untuk metadata kolom tujuan dalam skenario massal. Fitur ini diaktifkan dengan mengatur properti cacheBulkCopyMetadata string koneksi yang baru ditambahkan ke true (nilai defaultnya adalah false ). |
Menambahkan penangan dan dukungan pesan SQL Server untuk rantai SQLException | Menambahkan handler pesan SQL Server yang memungkinkan beberapa fitur termasuk umpan balik tambahan untuk kueri yang berjalan lama, pengelogan kesalahan universal, dan penurunan tingkat keparahan pesan kesalahan otomatis dari SQLException ke SQLWarning. Selain itu, fitur ini memungkinkan penautan SQLExceptions bersama-sama sehingga semua pesan kesalahan tersedia untuk pengguna. Lihat Menangani Kesalahan. |
Memberikan dukungan penuh untuk RFC4180 untuk operasi penyisipan massal CSV | Dukungan untuk bidang yang dikutip yang berisi baris baru hilang untuk memastikan dukungan penuh dengan RFC4180; ini telah ditambahkan. |
Mengizinkan pembuatan microsoft.sql.DateTimeOffset instans dari java.time.OffsetDateTime nilai |
Konversi antara dua jenis data sudah ada di driver menggunakan perantara Timestamp . Penambahan ini menghapus perantara tersebut, meningkatkan performa dan mengurangi potensi kesalahan terkait zona waktu. |
Perubahan dalam 12.8
Ubah | Detail |
---|---|
Enum SQLServerSortOrder sekarang bersifat publik |
Mengubah visibilitas enum SQLServerSortOrder ke publik yang memungkinkan pengguna fleksibilitas yang lebih besar dalam kueri yang menggunakan enum ini. |
Hapus synchronized dari penimpaan Soket |
Salah ditambahkan dalam perubahan sebelumnya untuk mengonfirmasi dengan standar pemeriksaan kode, metode pilih berubah tidak, pada kenyataannya, perlu disinkronkan, dan telah diubah untuk mencerminkan ini. |
Merevisi perubahan RMERR/RMFAIL sebelumnya dengan membuat default RMFAIL |
Perubahan sebelumnya mengubah nilai menjadi XAER_RMFAIL XAER_RMERR untuk kasus tertentu, namun kasus-kasus ini dengan cepat menjadi sebagian besar dari semua kasus yang tercakup. Solusinya adalah mengubah default ke RMFAIL dan mengonversi ke RMERR untuk inversi kasus yang dinyatakan sebelumnya. |
Dependensi yang diperbarui | Versi dependensi yang diperbarui untuk azure-identity , bouncycastle , dan msal . |
Dukungan yang direvisi untuk TDSType.GUID |
Meningkatkan penambahan dukungan asli dengan TDSType.GUID mengizinkan bagian langsung UUID ke setObject metode . |
Menambahkan pengelogan ke penembolokan token | Menambahkan pengelogan tambahan untuk skenario penembolokan token untuk membantu dalam skenario debug. |
Perbaikan di 12.8
Perbaikan | Detail |
---|---|
Memperbaiki regresi dengan menentukan nama argumen dalam sintaks pernyataan yang dapat dipanggil | Memperbaiki regresi dari 12.6.2 --> 12.6.3 di mana CallableStatements dari format tertentu mengembalikan nilai yang salah. Masalah GitHub #2477. |
Memperbaiki penguraian untuk parantesis dalam prosedur dan fungsi tersimpan | Memperbaiki masalah saat memanggil fungsi dengan parantesis di akhir dalam pernyataan yang dapat dipanggil, misalnya fungsi() vs fungsi, yang mengakibatkan nilai pengembalian selalu 0. Ini adalah regresi dari 12.6.2 --> 12.6.3. Masalah GitHub #2463. |
Memperbaiki kesalahan di mana CallableStatement dengan argumen default tidak dihormati oleh driver. |
Memperbaiki kesalahan yang merupakan regresi dari 12.5.0 --> 12.6.0, di mana argumen default dalam pernyataan yang dapat dipanggil diabaikan. Masalah GitHub #2446. |
Perbaiki untuk menghapus TokenCredential kelas yang tidak diperlukan |
TokenCredentialClass tidak diperlukan dalam SQLServerSecurityUtility dan dapat menyebabkan salah dilemparkan NoClassDefFoundError . Ini menghapus impor, menggantinya dengan generik Object . Masalah GitHub #2439. |
Memperbaiki kesalahan konversi string tanda waktu untuk CallableStatements | Memperbaiki pengecualian konversi yang terjadi saat memanggil DateTime parameter masuk/keluar saat mengatur String nilai. Masalah GitHub #2436. |
Memperbaiki konstruktor SqlAuthenticationToken untuk menerima parameter yang benar | Konstruktor untuk SQLAuthenticationToken salah, bekerja dengan parameter input dalam hitungan detik, kapan seharusnya milidetik. Masalah GitHub #2424. |
Perbaiki untuk menghapus handel pernyataan yang disiapkan sebelum koneksi ulang | Ini memperbaiki masalah di mana handel yang salah digunakan dalam SQLServerPreparedStatement setelah koneksi ulang dengan menghapus SQLServerPreparedStatement.prepStmtHandle dengan benar sebelum menyambungkan kembali. Masalah GitHub #2364. |
Perbaiki untuk menghapus cache pernyataan yang disiapkan saat mengatur ulang koneksi kumpulan pernyataan | Ini memperbaiki masalah di mana, dengan pengumpulan pernyataan diaktifkan, menggunakan kembali koneksi dari ConnectionPool mengakibatkan entri hilang, atau salah dimasukkan. Masalah GitHub #2356. |
Perbaiki untuk membatalkan ikatan socketTimeout dari loginTimeout |
socketTimeout harus memiliki batas loginTimeout atas untuk pembentukan koneksi, tetapi seharusnya tidak memiliki batas atas setelah driver terhubung. Ini memperbaiki perilaku tersebut. Masalah GitHub #2354. |
Perbaiki untuk memeriksa dengan benar apakah TDSCommand penghitung null sebelum mencoba untuk meningkatkan |
Menambahkan pemeriksaan yang hilang null untuk TDSCommand penghitung NullPointerException , mencegah hal yang mungkin timbul. Masalah GitHub #2353. |
Memperbaiki prosedur panggilan dengan parameter output dengan sintaks empat bagiannya | Memperbaiki masalah saat memanggil prosedur tersimpan dengan sintaks empat bagian (yaitu dengan server tertaut) mengakibatkan kesalahan yang menyatakan aliran protokol TDS tidak valid. Masalah GitHub #2344. |
Memperbaiki parameter escape schema dengan benar untuk getProcedures dan getProcedureColumns |
Metode SQLServerDatabaseMetadata getProcedures dan getProcedureColumns tidak melarikan diri dengan benar karakter tertentu (misalnya \ ) untuk schema parameter . Ini memperbaiki masalah tersebut. Masalah GitHub #2336. |
Menambahkan peta cache token untuk memperbaiki penggunaan token autentikasi yang tidak diinginkan untuk koneksi berikutnya | Ini memperbaiki masalah di mana kredensial klien dapat digunakan kembali sebagai, sementara token autentikasi di-cache, hanya digunakan kembali dengan rahasia klien yang diubah. Masalah GitHub #2334. |
Memperbaiki dukungan untuk exec sintaks escape di CallableStatements |
Ini memperbaiki masalah di mana, setelah menghapus panggilan yang dibungkus sp_executesql /sp_prepexec untuk menjalankan CallableStatements dengan cepat, EXEC panggilan tidak lagi berfungsi. Masalah GitHub #2325. |
Perbaikan untuk memastikan Money dan SmallMoney berada dalam rentang yang benar untuk BulkCopy |
Ini memperbaiki masalah di mana, saat menggunakan BulkCopy dengan Money atau SmallMoney nilai, konversi ke/dari nilai dapat menyebabkan ArithmeticOverflowException . Masalah GitHub #2309. |
Perbaiki untuk memastikan ResultSetMetadata DataabseMetadata.getColumns() sudah benar untuk semua kolom |
Metadata yang dikembalikan salah untuk beberapa kolom, ini memperbaiki masalah tersebut. Masalah GitHub #2232. |
Perbaiki untuk menonaktifkan percobaan ulang koneksi dengan benar saat connectRetryCount diatur ke 0 |
Ini memperbaiki perilaku di mana, bahkan dengan connectRetryCount diatur ke 0, driver mencoba mencoba kembali sampai loginTimeout tercapai. Masalah GitHub #2232. Masalah GitHub #2188. |
Perbaikan untuk mengatasi ClassLoader kebocoran ActivityCorrelator ThreadLocal |
Memperbaiki masalah di mana, setelah driver sebelumnya berubah menjadi ActivityId , ThreadLocal in ActivityCorrelator tidak pernah dihapus dari utas. |
Perbaikan untuk menjalankan prosedur tersimpan secara langsung untuk panggilan RPC | Panggilan RPC menggunakan logika sebelumnya dengan dibungkus dalam sp_executesql panggilan; ini memperbaiki perilaku tersebut. |
Rilis sebelumnya
12.6
Unduh Microsoft JDBC Driver 12.6.3 untuk SQL Server (zip)
Unduh Microsoft JDBC Driver 12.6.3 untuk SQL Server (tar.gz)
Nomor rilis: 12.6.3
Dirilis: 20 Juni 2024
Jika Anda perlu mengunduh driver dalam bahasa selain yang terdeteksi untuk Anda, Anda dapat menggunakan tautan langsung ini.
Untuk driver dalam file zip: Cina (Disederhanakan) | Cina (Tradisional) | Inggris (Amerika Serikat) | Prancis | Jerman | Italia | | Portugis Korea | (Brasil) | Spanyol Rusia |
Untuk driver dalam file tar.gz: Cina (Sederhana) | Cina (Tradisional) | Inggris (Amerika Serikat) | Prancis | Jerman | Italia | | Portugis Korea | (Brasil) | Spanyol Rusia |
12.6 Kepatuhan
Perubahan kepatuhan | Detail |
---|---|
Unduh pembaruan terbaru untuk JDBC Driver 12.6. | • GitHub, 12.6.0 • Maven Tengah |
Sepenuhnya mematuhi Spesifikasi JDBC API 4.2. | Jar dalam paket 12.6 dinamai sesuai dengan kompatibilitas versi Java. Misalnya, file mssql-jdbc-12.6.0.jre11.jar dari paket 12.6 harus digunakan dengan Java 11 (atau lebih tinggi). |
Kompatibel dengan Java Development Kit (JDK) versi 21.0, 17.0, 11.0, dan 1.8. | Microsoft JDBC Driver 12.6 untuk SQL Server sekarang kompatibel dengan Java Development Kit (JDK) versi 21.0 selain JDK 17.0, 11.0 dan 1.8. |
12.6 Rilis
Nomor rilis: 12.6.3
Dirilis: 20 Juni 2024
Memperbaiki masalah di 12.6.3:
- Memperbaiki masalah di mana kelas TokenCredential harus diimpor
- Memperbaiki regresi konversi string tanda waktu
- Memperbaiki regresi nilai default SQLServerCallableStatement
Unduh Microsoft JDBC Driver 12.6.3 untuk SQL Server (zip)
Unduh Microsoft JDBC Driver 12.6.3 untuk SQL Server (tar.gz)
Jika Anda perlu mengunduh driver dalam bahasa selain yang terdeteksi untuk Anda, Anda dapat menggunakan tautan langsung ini.
Untuk driver dalam file zip: Cina (Disederhanakan) | Cina (Tradisional) | Inggris (Amerika Serikat) | Prancis | Jerman | Italia | | Portugis Korea | (Brasil) | Spanyol Rusia |
Untuk driver dalam file tar.gz: Cina (Sederhana) | Cina (Tradisional) | Inggris (Amerika Serikat) | Prancis | Jerman | Italia | | Portugis Korea | (Brasil) | Spanyol Rusia |
Nomor rilis: 12.6.2
Dirilis: 23 Mei 2024
Menambahkan fitur di 12.6.2:
- Menambahkan penembolokan kredensial untuk Kredensial Identitas Terkelola dan Kredensial Azure Default
Memperbaiki masalah di 12.6.2:
- Periksa apakah uang dan uang kecil berada dalam kisaran yang benar untuk massal
- Periksa apakah penghitung TDSCommand null sebelum bertahap
- Hapus cache pernyataan yang disiapkan saat mereset koneksi kumpulan pernyataan
- Hapus handel pernyataan yang disiapkan sebelum menyambungkan kembali
- Panggilan RPC untuk CallableStatements akan dijalankan secara langsung
- Objek token autentikasi yang dikoreksi untuk menerima kedaluwarsa dalam milidetik
- SocketTimeout harus tidak dibatasi oleh loginTimeout setelah koneksi berhasil dibuka
Unduh Microsoft JDBC Driver 12.6.2 untuk SQL Server (zip)
Unduh Microsoft JDBC Driver 12.6.2 untuk SQL Server (tar.gz)
Jika Anda perlu mengunduh driver dalam bahasa selain yang terdeteksi untuk Anda, Anda dapat menggunakan tautan langsung ini.
Untuk driver dalam file zip: Cina (Disederhanakan) | Cina (Tradisional) | Inggris (Amerika Serikat) | Prancis | Jerman | Italia | | Portugis Korea | (Brasil) | Spanyol Rusia |
Untuk driver dalam file tar.gz: Cina (Sederhana) | Cina (Tradisional) | Inggris (Amerika Serikat) | Prancis | Jerman | Italia | | Portugis Korea | (Brasil) | Spanyol Rusia |
Nomor rilis: 12.6.1
Dirilis: 20 Februari 2024
Memperbaiki masalah di 12.6.1:
- Memperbaiki sintaks escape 'EXEC' untuk CallableStatements
Unduh Microsoft JDBC Driver 12.6.1 untuk SQL Server (zip)
Unduh Microsoft JDBC Driver 12.6.1 untuk SQL Server (tar.gz)
Jika Anda perlu mengunduh driver dalam bahasa selain yang terdeteksi untuk Anda, Anda dapat menggunakan tautan langsung ini.
Untuk driver dalam file zip: Cina (Disederhanakan) | Cina (Tradisional) | Inggris (Amerika Serikat) | Prancis | Jerman | Italia | | Portugis Korea | (Brasil) | Spanyol Rusia |
Untuk driver dalam file tar.gz: Cina (Sederhana) | Cina (Tradisional) | Inggris (Amerika Serikat) | Prancis | Jerman | Italia | | Portugis Korea | (Brasil) | Spanyol Rusia |
Nomor rilis: 12.6.0
Dirilis: 31 Januari 2024
Unduh Microsoft JDBC Driver 12.6.0 untuk SQL Server (zip)
Unduh Microsoft JDBC Driver 12.6.0 untuk SQL Server (tar.gz)
Jika Anda perlu mengunduh driver dalam bahasa selain yang terdeteksi untuk Anda, Anda dapat menggunakan tautan langsung ini.
Untuk driver dalam file zip: Cina (Disederhanakan) | Cina (Tradisional) | Inggris (Amerika Serikat) | Prancis | Jerman | Italia | | Portugis Korea | (Brasil) | Spanyol Rusia |
Untuk driver dalam file tar.gz: Cina (Sederhana) | Cina (Tradisional) | Inggris (Amerika Serikat) | Prancis | Jerman | Italia | | Portugis Korea | (Brasil) | Spanyol Rusia |
Fitur baru di 12.6
Fitur | Detail |
---|---|
Dukungan Java 21 | Driver sekarang kompatibel dengan Java Development Kit (JDK) versi 21.0 selain JDK 17.0, 11.0 dan 1.8. |
Mengizinkan panggilan prosedur tersimpan secara langsung melalui penggunaan properti koneksi baru useFlexibleCallableStatements |
Driver sekarang memanggil prosedur penyimpanan secara langsung, dibandingkan dengan membungkus prosedur di sekitar exec sp_executesql , menyederhanakan prosedur dan meningkatkan performa. |
Menambahkan useDefaultJaasConfig properti string koneksi |
Ketika diatur ke true, memungkinkan autentikasi Kerberos tanpa konfigurasi eksternal tambahan. |
Menambahkan useDefaultGSSCredential properti string koneksi |
Ketika diatur ke true, memungkinkan driver untuk membuat GSSCredential atas nama pengguna, saat menggunakan Native GSS-API untuk autentikasi Kerberos. |
Menambahkan calcBigDecimalPrecision properti string koneksi |
Ketika diatur ke true, memungkinkan driver menghitung presisi untuk input BigDecimal. |
Menambahkan pencatat bernama baru untuk percobaan ulang terbuka koneksi dan koneksi diam tersambung kembali | Percobaan ulang buka koneksi menggunakan kategori Pengelogan pengalihan, dan dapat digunakan pada tingkat pengelogan FINE. Ketahanan koneksi menganggur terhubung kembali menggunakan kategori pengelogan Ketahanan, dan dapat digunakan pada tingkat pengelogan FINE atau FINER. |
Perubahan dalam 12.6
Ubah | Detail |
---|---|
Mengubah cara IBM JDK diperiksa untuk mencegah masalah dengan lingkungan OSGi | Diubah dari hanya memeriksa nama vendor, hingga memeriksa nama vendor dan vm. |
Menyinkronkan semua panggilan ke MSAL dengan benar | Mencegah driver melakukan panggilan tambahan dan membuktikan dialog yang tidak perlu. |
Menambahkan kesalahan tambahan yang harus diterjemahkan ke RMFAIL | Menambahkan kasus tambahan, "reset koneksi dengan peer" dan "waktu koneksi habis", yang harus sama dengan RMFAIL |
Mengubah bagaimana Tanda Waktu digunakan dalam BulkCopy | Ubah perilaku BulkCopy dari membuat serialisasi dan deserialisasi objek Tanda Waktu, menjadi menggunakan objek secara langsung, yang mengarah ke peningkatan performa saat menggunakan sejumlah besar Tanda Waktu. |
Diubah socketTimeout untuk memastikannya kurang dari loginTimeout |
Sebelumnya socketTimeout bertindak tanpa batas waktu dari loginTimeout mengarah ke perilaku yang berpotensi membingungkan di mana driver akan membutuhkan waktu lebih lama untuk waktu habis dari yang diharapkan. Ini telah diperbaiki sehingga socketTimeout selalu memiliki batas atas yang sama dengan loginTimeout . |
Cache PreparedStatement yang disesuaikan sehingga dibersihkan sebelum setiap eksekusi | Cache PreparedStatement tidak dibersihkan dengan benar, yang, selain jarang, dapat menyebabkan masalah memori dari waktu ke waktu. Perubahan ini memastikan cache dibersihkan sebelum setiap eksekusi, mencegah penumpukan objek. |
Ditingkatkan ke dependensi Bouncycastle yang lebih baru | Tingkatkan dari bcprov-jdk15on dan bcpkix-jdk15on ke bcprov-jdk18on dan bcpkix-jdk18on sebagai yang pertama tidak lagi diperbarui. |
Dependensi yang diperbarui | Versi dependensi yang diperbarui untuk azure-identity , , azure-security-keyvault-keys bouncycastle , h2 dan msal . |
Perbaikan di 12.6
Perbaikan | Detail |
---|---|
Memperbaiki pemeriksaan null yang hilang untuk e.getCause() | Memperbaiki masalah di mana, ketika pengecualian tidak memiliki penyebab, pengecualian itu sendiri diteruskan sebagai gantinya, mencegahnya hilang. Masalah GitHub #2299. |
Memperbaiki kunci di IOBuffer untuk mencegah masalah kebuntuan yang dapat muncul | Memperbaiki implementasi kunci di IOBuffer, khususnya di sekitar disableSSL, untuk mencegah kebuntuan yang dapat muncul dalam situasi tertentu. Masalah GitHub #2288. Masalah GitHub #2265. |
Memperbaiki masalah dengan Tanda Waktu dan salinan massal untuk sisipan batch | Memperbaiki zona waktu yang tidak diterapkan dengan benar ke Tanda Waktu saat dimasukkan menggunakan sisipan batch dengan massal. Masalah GitHub #2271. |
Memperbaiki getter dan setter yang hilang untuk useBulkCopyForBatchInsert |
Memperbaiki masalah di mana perilaku tidak sama antara SQLServerConnection dan SQLServerConnnectionPoolProxy , kapan seharusnya, seperti useBulkCopyForBatchInsert yang hilang getter dan setter di yang terakhir. Masalah GitHub #2245. |
Memperbaiki kueri metadata massal untuk menggunakan data cache, jika tersedia | Memperbaiki masalah di mana, meskipun data di-cache, panggilan untuk metadata kolom dipanggil setiap kali. Masalah GitHub #2224. |
Memperbaiki pemeriksaan skala BigDecimal yang hilang untuk nilai TVP | - Memperbaiki masalah di mana, saat menulis nilai baris TVP, nilai input tidak difilter dengan benar untuk skala BigDecimal. Masalah GitHub #2222. |
Memperbaiki schemaPattern di SQLServerDatabaseMetadata untuk memastikannya lolos dengan benar | Memperbaiki masalah di mana schemaPattern adalah satu-satunya pola yang tidak diloloskan dengan benar di SQLServerDatabaseMetadata. Masalah GitHub #2186. |
Memperbaiki masalah di mana SQLState null dikembalikan saat mencoba mengonversi tanggal menjadi panjang | Memperbaiki masalah di mana, ketika xopenStates diatur ke true, driver tidak mengembalikan kode status SQL-99 yang diharapkan dalam instans tertentu. Masalah GitHub #2167. |
Memperbaiki kesalahan getMetaData untuk kueri yang berisi TOP | Memperbaiki masalah di mana, saat menggunakan kualifikasi TOP dalam kueri, driver mengembalikan kesalahan mengenai ParameterMetadata. Masalah GitHub #1776. |
Memperbaiki masalah penguraian nama tabel saat menggunakan sisipan batch | Memperbaiki masalah di mana pernyataan sisipan dengan spasi kosong yang hilang berfungsi dengan benar dalam kasus reguler, tetapi tidak saat menggunakan sisipan batch. Masalah GitHub #1534. |
Memperbaiki masalah dengan ParameterMetadata dan indeks yang tidak valid | Memperbaiki masalah dengan ParameterMetadata yang tidak memeriksa dengan benar, dan melemparkan pengecualian untuk, indeks 0 yang tidak valid. Masalah GitHub #1490. |
Perilaku tetap ActivityID di ActivityCorrelator | Memperbaiki cara ActivityID ditentukan dan digunakan untuk lebih sejalan dengan perilaku driver Microsoft lainnya. |
Perbaiki untuk mengabaikan kolom komputasi saat menggunakan massal untuk penyisipan batch | Memperbaiki perilaku BulkCopy untuk mengabaikan kolom komputasi, dan mengizinkan sisipan batch, ketika sebelumnya penyisipan akan gagal dan mengembalikan kesalahan yang mengutip kolom komputasi tersebut. |
Memperbaiki perilaku driver mengenai tanda tangan saat menggunakan Java Key Store dan Azure Key Vault | Memperbaiki masalah di mana tanda tangan tidak diverifikasi dengan benar saat menggunakan Java Key Store, serta menambahkan API baru untuk menandatangani metadata kunci master kolom (dan mengembalikan tanda tangan yang dihasilkan) untuk digunakan dengan Java Key Store dan Azure Key Vault |
Memperbaiki konversi DateTimeOffset yang salah dari getObject() | Memperbaiki masalah saat memanggil ResultSet.getObject() pada kolom DATETIMEOFFSET, dengan LocalDate/LocalTime/LocalDateTime sebagai argumen kelas, nilai dalam kolom akan dikonversi ke zona waktu lokal. |
12.4
Unduh Microsoft JDBC Driver 12.4.2 untuk SQL Server (zip)
Unduh Microsoft JDBC Driver 12.4.2 untuk SQL Server (tar.gz)
Nomor rilis: 12.4.2
Dirilis: 27 Oktober 2023
Jika Anda perlu mengunduh driver dalam bahasa selain yang terdeteksi untuk Anda, Anda dapat menggunakan tautan langsung ini.
Untuk driver dalam file zip: Cina (Disederhanakan) | Cina (Tradisional) | Inggris (Amerika Serikat) | Prancis | Jerman | Italia | | Portugis Korea | (Brasil) | Spanyol Rusia |
Untuk driver dalam file tar.gz: Cina (Sederhana) | Cina (Tradisional) | Inggris (Amerika Serikat) | Prancis | Jerman | Italia | | Portugis Korea | (Brasil) | Spanyol Rusia |
12.4 Kepatuhan
Perubahan kepatuhan | Detail |
---|---|
Unduh pembaruan terbaru untuk Driver JDBC 12.4. | • GitHub, 12.4.0. • Maven Tengah. |
Sepenuhnya mematuhi Spesifikasi JDBC API 4.2. | Jar dalam paket 12.4 dinamai sesuai dengan kompatibilitas versi Java. Misalnya, file mssql-jdbc-12.4.0.jre11.jar dari paket 12.4 harus digunakan dengan Java 11 (atau lebih tinggi). |
Kompatibel dengan Java Development Kit (JDK) versi 20.0, 17.0, 11.0, dan 1.8. | Microsoft JDBC Driver 12.4 untuk SQL Server sekarang kompatibel dengan Java Development Kit (JDK) versi 20.0 selain JDK 17.0, 11.0 dan 1.8. |
12.4 Rilis
Nomor rilis: 12.4.2
Dirilis: 21 September 2023
Memperbaiki masalah di 12.4.2:
- Mengembalikan pemeriksaan IBM ke pemeriksaan vendor dan menambahkan pemeriksaan nama vm tambahan untuk menghapus positif palsu
Unduh Microsoft JDBC Driver 12.4.2 untuk SQL Server (zip)
Unduh Microsoft JDBC Driver 12.4.2 untuk SQL Server (tar.gz)
Jika Anda perlu mengunduh driver dalam bahasa selain yang terdeteksi untuk Anda, Anda dapat menggunakan tautan langsung ini.
Untuk driver dalam file zip: Cina (Disederhanakan) | Cina (Tradisional) | Inggris (Amerika Serikat) | Prancis | Jerman | Italia | | Portugis Korea | (Brasil) | Spanyol Rusia |
Untuk driver dalam file tar.gz: Cina (Sederhana) | Cina (Tradisional) | Inggris (Amerika Serikat) | Prancis | Jerman | Italia | | Portugis Korea | (Brasil) | Spanyol Rusia |
Nomor rilis: 12.4.1
Dirilis: 24 Agustus 2023
Perubahan dalam 12.4.1:
- Nama parameter SQL yang disiapkan sekarang memiliki penspasian otomatis yang diterapkan
Memperbaiki masalah di 12.4.1:
- Memperbaiki kueri metadata getUserName dalam konteks keamanan yang ditiru dalam database Azure SQL
- Memperbaiki deteksi IBM JDK
- Memperbaiki bug di mana tanda tangan tidak diverifikasi untuk Java Key Store dan menambahkan signColumnMasterkeyMetadata API ke JKS dan AKV
- Menambahkan pelokalan string kesalahan yang hilang dalam rilis asli
Unduh Microsoft JDBC Driver 12.4.1 untuk SQL Server (zip)
Unduh Microsoft JDBC Driver 12.4.1 untuk SQL Server (tar.gz)
Jika Anda perlu mengunduh driver dalam bahasa selain yang terdeteksi untuk Anda, Anda dapat menggunakan tautan langsung ini.
Untuk driver dalam file zip: Cina (Disederhanakan) | Cina (Tradisional) | Inggris (Amerika Serikat) | Prancis | Jerman | Italia | | Portugis Korea | (Brasil) | Spanyol Rusia |
Untuk driver dalam file tar.gz: Cina (Sederhana) | Cina (Tradisional) | Inggris (Amerika Serikat) | Prancis | Jerman | Italia | | Portugis Korea | (Brasil) | Spanyol Rusia |
Nomor rilis: 12.4.0
Dirilis: 31 Juli 2023
Unduh Microsoft JDBC Driver 12.4.0 untuk SQL Server (zip)
Unduh Microsoft JDBC Driver 12.4.0 untuk SQL Server (tar.gz)
Jika Anda perlu mengunduh driver dalam bahasa selain yang terdeteksi untuk Anda, Anda dapat menggunakan tautan langsung ini.
Untuk driver dalam file zip: Cina (Disederhanakan) | Cina (Tradisional) | Inggris (Amerika Serikat) | Prancis | Jerman | Italia | | Portugis Korea | (Brasil) | Spanyol Rusia |
Untuk driver dalam file tar.gz: Cina (Sederhana) | Cina (Tradisional) | Inggris (Amerika Serikat) | Prancis | Jerman | Italia | | Portugis Korea | (Brasil) | Spanyol Rusia |
Fitur baru di 12.4
Fitur | Detail |
---|---|
Dukungan Java 20 | Driver sekarang kompatibel dengan Java Development Kit (JDK) versi 20.0 selain JDK 17.0, 11.0 dan 1.8. |
Menambahkan properti string koneksi panggilan balik token akses | Melengkapi panggilan balik token akses yang diimplementasikan sebelumnya dengan memungkinkan meneruskan nama kelas penerapan panggilan balik di string koneksi. |
Menambahkan dukungan untuk ActiveDirectoryServicePrincipalCertificate | Tingkatkan pengalaman pengguna dengan mendukung ActiveDirectoryServicePrincipalCertificate dari Azure Identity Library melalui opsi authentication=ActiveDirectoryServicePrincipalCertificate koneksi . |
Menambahkan kasus lain untuk XAER_RMFAIL | Driver masih mengembalikan XAException dengan kesalahan XAER_RMERR dalam beberapa kasus. Kasus tambahan ditambahkan ke penanganan kesalahan XA untuk mengatasi hal ini. |
Perubahan dalam 12.4
Ubah | Detail |
---|---|
Logika autentikasi federasi yang diperbarui untuk menggunakan cache token persisten saat mengambil token | Pembaruan ini meningkatkan performa dalam skenario pengambilan token dan lebih mudah memungkinkan kompatibilitas dengan versi MSAL di masa mendatang. |
Izinkan mitra failover untuk dicoba jika ada batas waktu soket | Memungkinkan upaya koneksi ulang dengan mitra failover yang disediakan setelah batas waktu soket. |
Peningkatan performa saat membangun definisi jenis parameter | Dengan melakukan prakomputasi ukuran array dan penyusun string yang digunakan dalam buildParamTypeDefinitions , dan dengan menghapus alokasi string yang tidak diperlukan, tingkatkan performa di mana metode ini digunakan. |
ServerName yang diubah dikirim dalam LOGIN paket untuk menyertakan instanceName |
serverName sekarang ditambahkan ke akhir instanceName dalam LOGIN paket. |
Metode supportTransaction yang diperbarui untuk mencerminkan apakah server mendukung transaksi | Mengatasi masalah di mana connection.rollback tidak berfungsi untuk database Azure Synapse, karena sintaks yang digunakan supportTransaction tidak didukung oleh Azure Synapse. |
Perbarui panggilan sp_cursor sehingga nama tabel diteruskan alih-alih string kosong | Mengatasi masalah di mana pembaruan baris ResultSet yang tidak konsisten diterima saat memperbarui tabel satu-ke-banyak. |
Dukungan yang diperbaruiLikeEscapeClause() untuk memeriksa Azure Data Warehouse | Mengatasi masalah di mana supportsLikeEscapeClause mengembalikan true untuk AzureDW meskipun secara eksplisit tidak didukung. |
Ditingkatkan ke spesifikasi OSGi JDBC terbaru | Tingkatkan dari osgi.compendium 5.0.0 ke osgi.service.jdbc 1.1.0 untuk mempertahankan kepatuhan dengan spesifikasi OSGi JDBC 8.1.0. |
Dependensi yang diperbarui | Versi dependensi yang diperbarui untuk azure-identity , , azure-security-keyvault-keys gson , h2 dan msal . |
Perbaikan dalam 12.4
Perbaikan | Detail |
---|---|
Memperbaiki masalah performa dan memori yang ada dengan BigDecimal | Mengembalikan semua perubahan, sejak rilis 12.2, mengenai BigDecimal. Perbaikan ini mengatasi masalah performa yang diamati. Pengguna perlu berhati-hati saat menggunakan BigDecimal untuk menghindari masalah pemotongan yang sebelumnya ditangani. Masalah GitHub #2176. |
Memperbaiki validasi sertifikat server untuk encrypt=strict | Perbaiki untuk memastikan sertifikat server divalidasi dengan benar dalam kasus di mana encrypt diatur ke strict . Masalah GitHub #2174. |
Memperbaiki lockTimeout tidak berlaku saat mode pengalihan diatur di Azure DB | Diperbaiki ketika lockTimeout diatur, karena seharusnya hanya berlaku untuk koneksi dari luar Azure, dan bukan dari dalam Azure, seperti sebelumnya. Masalah GitHub #2110. |
Memperbaiki jumlah utas tinggi saat menggunakan findSocketUsingThreading | Memperbaiki masalah di mana pengecualian yang tidak tertangkap menyebabkan gangguan dalam panggilan tidur di hulu, menyebabkan percobaan ulang terjadi terlalu cepat. Masalah GitHub #2104. |
Memperbaiki kondisi perlombaan timer bersama | Memperbaiki potensi kondisi balapan di SharedTimer kelas . Masalah GitHub #2085. |
Memperbaiki kesalahan dengan prosedur tersimpan dan hasil nol metaQuery |
Memperbaiki masalah di mana, jika metaQuery tidak mengembalikan hasil setelah eksekusi prosedur tersimpan, ini akan mengembalikan kesalahan parameter yang tidak ditentukan. Masalah GitHub #2063. |
Memperbaiki sisipan batch yang tidak valid ketika kolom yang disediakan di sisipan berbeda dalam urutan dari skema tabel | Memperbaiki masalah di mana penggunaan useBulkCopyForBatchInsert=true dapat menyebabkan mix-up kolom dan data yang tidak valid. Masalah GitHub #1992. |
Memperbaiki penanganan kesalahan XA untuk menumbuhkan kembali XAER_RMFAIL alih-alih XAER_RMERR | Memperbaiki masalah di mana, driver akan mengembalikan XAException dengan kode kesalahan XAER_RMERR jika terjadi failover SQL Server dari simpul utama ke simpul siaga saat melakukan Transaksi XA. Masalah GitHub #1432. |
Perbaikan pada ID Aktivitas dan perilaku ID Klien untuk mempertahankan konsistensi dengan spesifikasi JDBC | Memperbaiki perilaku ID Aktivitas agar tetap sama selama masa proses, selalu kirim ID Aktivitas dalam PRELOGIN urutan , dan kenaikan untuk setiap koneksi baru. Juga memperbaiki ID klien untuk bertahan selama masa pakai proses. |
12,2
Unduh Microsoft JDBC Driver 12.2.0 untuk SQL Server (zip)
Unduh Microsoft JDBC Driver 12.2.0 untuk SQL Server (tar.gz)
Nomor rilis: 12.2.0
Dirilis: 31 Januari 2023
Jika Anda perlu mengunduh driver dalam bahasa selain yang terdeteksi untuk Anda, Anda dapat menggunakan tautan langsung ini.
Untuk driver dalam file zip: Cina (Disederhanakan) | Cina (Tradisional) | Inggris (Amerika Serikat) | Prancis | Jerman | Italia | | Portugis Korea | (Brasil) | Spanyol Rusia |
Untuk driver dalam file tar.gz: Cina (Sederhana) | Cina (Tradisional) | Inggris (Amerika Serikat) | Prancis | Jerman | Italia | | Portugis Korea | (Brasil) | Spanyol Rusia |
12.2 Kepatuhan
Perubahan kepatuhan | Detail |
---|---|
Unduh pembaruan terbaru untuk JDBC Driver 12.2. | • GitHub, 12.2.0. • Maven Tengah. |
Sepenuhnya mematuhi Spesifikasi JDBC API 4.2. | Jar dalam paket 12.2 dinamai sesuai dengan kompatibilitas versi Java. Misalnya, file mssql-jdbc-12.2.0.jre11.jar dari paket 12.2 harus digunakan dengan Java 11 (atau lebih tinggi). |
Kompatibel dengan Java Development Kit (JDK) versi 19.0, 17.0, 11.0, dan 1.8. | Microsoft JDBC Driver 12.2 untuk SQL Server sekarang kompatibel dengan Java Development Kit (JDK) versi 19.0 selain JDK 17.0, 11.0 dan 1.8. |
12.2 Rilis
Unduh Microsoft JDBC Driver 12.2.0 untuk SQL Server (zip)
Unduh Microsoft JDBC Driver 12.2.0 untuk SQL Server (tar.gz)
Nomor rilis: 12.2.0
Dirilis: 31 Januari 2023
Jika Anda perlu mengunduh driver dalam bahasa selain yang terdeteksi untuk Anda, Anda dapat menggunakan tautan langsung ini.
Untuk driver dalam file zip: Cina (Disederhanakan) | Cina (Tradisional) | Inggris (Amerika Serikat) | Prancis | Jerman | Italia | | Portugis Korea | (Brasil) | Spanyol Rusia |
Untuk driver dalam file tar.gz: Cina (Sederhana) | Cina (Tradisional) | Inggris (Amerika Serikat) | Prancis | Jerman | Italia | | Portugis Korea | (Brasil) | Spanyol Rusia |
Fitur baru di 12.2
Fitur | Detail |
---|---|
Dukungan Java 19 | Driver sekarang kompatibel dengan Java Development Kit (JDK) versi 19.0 selain JDK 17.0, 11.0 dan 1.8. |
Menambahkan dukungan untuk panggilan balik token akses | Memungkinkan kode klien untuk mendaftarkan panggilan balik pada DataSource yang mengembalikan token akses. |
Menambahkan dukungan untuk DefaultAzureCredential | Tingkatkan pengalaman pengguna dengan mendukung dan DefaultAzureCredential IntelliJCredential dari Azure Identity Library melalui opsi authentication=ActiveDirectoryDefault koneksi . |
Menambahkan properti koneksi baru datetimeParameterType untuk menentukan jenis data yang akan digunakan untuk parameter tanggal/tanda waktu | Menambahkan properti datetimeParameterType koneksi yang memungkinkan pengguna untuk secara eksplisit menentukan konversi ke datetime atau datetime2 , memberikan kompatibilitas yang lebih besar dalam database yang lebih lama. |
Perubahan dalam 12.2
Ubah | Detail |
---|---|
Membuat sopir ramah Loom | synchronized(foo) Mengganti dengan kunci masuk kembali, meningkatkan performa saat menggunakan Loom. |
Autentikasi Identitas Terkelola menggunakan pustaka Identitas Azure | Mengganti kode bawaan driver untuk mendapatkan dan menyimpan token Identitas Terkelola dengan pustaka Azure Identity. Perubahan ini menambahkan dukungan Identitas Terkelola untuk lebih banyak layanan Azure atas apa yang didukung driver sebelumnya. |
Menjadikan MSAL dependensi opsional | Membuat msal4j menjadi dependensi opsional lagi. |
Dependensi yang diperbarui | Versi dependensi yang diperbarui untuk azure-identity , , azure-security-keyvault-keys antlr4-runtime , bcprov-jdk15on , bcpkix-jdk15on , dan msal . |
Perbarui untuk memeriksa kelas ExtendedSocketOption secara dinamis | Mengatasi kesalahan saat ExtendedSocketOptions hilang mengembalikan NoClassDefFoundError . |
Perbaikan dalam 12.2
Perbaikan | Detail |
---|---|
Memperbaiki status SQL null dan kode kesalahan nol saat pengecualian database dilemparkan | Memperbaiki masalah di mana, setelah Kesalahan SQL, Status SQL dan kode kesalahan menunjukkan informasi yang salah. Masalah GitHub #2015. |
Memperbaiki pemulihan Koneksi Menganggur sehingga unprocessedResponseCount tidak terlalu berkurang |
unprocessedResponseCount hanya perlu direkrementasi ketika doneToken.isFinal benar, itu sedang direkrementasi terlepas dari itu. Masalah GitHub #1971. |
Memperbaiki menyambungkan ke host SQLServer yang salah | Memperbaiki masalah konkurensi di mana, ketika driver terhubung ke beberapa host SQLServer, koneksi dapat dibuat ke host yang salah. Masalah GitHub #1964. |
Diperbaiki salah updateCount |
Jumlah pembaruan yang salah dapat terjadi dalam kasus benar/salah untuk enablePrepareOnFirstPreparedStatementCall dan untuk prepexec/persiapan. Masalah GitHub #1961. |
Memperbaiki masalah konkurensi dalam metode obfuscation enkripsi/dekripsi untuk kata sandi truststore | Menambahkan kunci untuk mengenkripsi/mendekripsi dalam obfuscation kata sandi truststore. Masalah GitHub #1939. |
Memperbaiki masalah casing nama akun cache | Memperbaiki masalah di mana nama akun dikirim ke Pustaka Autentikasi Microsoft dengan sensitivitas huruf besar/kecil, yang mengarah ke permintaan masuk berulang. Masalah GitHub #1923. |
Memperbaiki bug pembatalan kueri | Memperbaiki bug pembatalan kueri yang terjadi secara terputus-putus dalam kueri batch. Masalah GitHub #1896. |
Memperbaiki kesalahan pernyataan yang dapat dipanggil | Memperbaiki pernyataan yang dapat dipanggil "indeks di luar batas" dan kesalahan "parameter tidak ditentukan". Masalah GitHub #1871. |
Memperbaiki pemeriksaan token DONE saat mengambil tataan hasil | Menambahkan kasus yang terlewat ke perbaikan DONE_ERROR sebelumnya, di mana status DONE_ERROR dari server yang dihasilkan dari sesi yang dimatikan diabaikan oleh driver. Masalah GitHub #1846. Masalah GitHub #1505. |
Pastikan batchParamValues dibersihkan dalam semua kasus saat menjalankan batch | Mengatasi masalah di mana batch tidak dibersihkan dengan benar saat menggunakan pembaruan massal. Masalah GitHub #1767. |
Presisi tetap dikirim saat menggunakan BigDecimal | Memperbaiki masalah di mana, secara default, nilai BigDecimal dikirim dengan presisi maksimum, yang dapat mengakibatkan pembulatan desimal yang tidak diinginkan. Masalah GitHub #1489. Masalah GitHub #942 |
Memperbaiki protokol NONE pengesahan agar berfungsi dalam semua kasus |
Memperbaiki logika di balik NONE protokol pengesahan untuk bekerja dalam semua kasus, bukan hanya yang spesifik. |
Memperbaiki kondisi balapan di SecureStringUtil | Memperbaiki kondisi balapan di SecureStringUtil selama pembuatan SecureStringUtil. |
11.2
Unduh Microsoft JDBC Driver 11.2.3 untuk SQL Server (zip)
Unduh Microsoft JDBC Driver 11.2.3 untuk SQL Server (tar.gz)
Nomor rilis: 11.2.3
Dirilis: 12 Januari 2023
Jika Anda perlu mengunduh driver dalam bahasa selain yang terdeteksi untuk Anda, Anda dapat menggunakan tautan langsung ini.
Untuk driver dalam file zip: Cina (Disederhanakan) | Cina (Tradisional) | Inggris (Amerika Serikat) | Prancis | Jerman | Italia | | Portugis Korea | (Brasil) | Spanyol Rusia |
Untuk driver dalam file tar.gz: Cina (Sederhana) | Cina (Tradisional) | Inggris (Amerika Serikat) | Prancis | Jerman | Italia | | Portugis Korea | (Brasil) | Spanyol Rusia |
11.2 Kepatuhan
Perubahan kepatuhan | Detail |
---|---|
Unduh pembaruan terbaru untuk JDBC Driver 11.2. | • GitHub, 11.2.0. • Maven Tengah. |
Sepenuhnya mematuhi Spesifikasi JDBC API 4.2. | Jar dalam paket 11.2 dinamai sesuai dengan kompatibilitas versi Java. Misalnya, file mssql-jdbc-11.20.jre17.jar dari paket 11.2 harus digunakan dengan Java 17. |
Kompatibel dengan Java Development Kit (JDK) versi 18.0, 17.0, 11.0, dan 1.8. | Microsoft JDBC Driver 11.2 untuk SQL Server sekarang kompatibel dengan Java Development Kit (JDK) versi 18.0 selain JDK 17.0, 11.0 dan 1.8. |
11.2 Rilis
Nomor rilis: 11.2.3
Dirilis: 12 Januari 2023
Memperbaiki masalah di 11.2.3:
- Memperbaiki status SQL null dan kode kesalahan nol saat pengecualian database dilemparkan
- Memperbaiki jumlah pembaruan yang salah ketika waktu habis terjadi dalam kueri batch
- Memperbaiki tanggal kedaluwarsa token yang salah saat menggunakan Azure Functions
- Memperbaiki menyambungkan ke host SQLServer yang salah
Nomor rilis: 11.2.2
Dirilis: 15 Desember 2022
Memperbaiki masalah di 11.2.2:
- Memperbaiki bug Ketahanan Koneksi Menganggur
- Pernyataan yang disiapkan dengan jelas menangani cache pada koneksi ulang diam
- Memperbaiki indeks pernyataan yang dapat dipanggil di luar kesalahan batas
- Memperbaiki pemeriksaan token DONE saat mengambil tataan hasil
- Memperbaiki kesalahan terputus-terputus: "Kesalahan internal selama dekripsi: Ketidakcocokan tag!"
Unduh Microsoft JDBC Driver 11.2.2 untuk SQL Server (zip)
Unduh Microsoft JDBC Driver 11.2.2 untuk SQL Server (tar.gz)
Jika Anda perlu mengunduh driver dalam bahasa selain yang terdeteksi untuk Anda, Anda dapat menggunakan tautan langsung ini.
Untuk driver dalam file zip: Cina (Disederhanakan) | Cina (Tradisional) | Inggris (Amerika Serikat) | Prancis | Jerman | Italia | | Portugis Korea | (Brasil) | Spanyol Rusia |
Untuk driver dalam file tar.gz: Cina (Sederhana) | Cina (Tradisional) | Inggris (Amerika Serikat) | Prancis | Jerman | Italia | | Portugis Korea | (Brasil) | Spanyol Rusia |
Nomor rilis: 11.2.1
Dirilis: 8 September 2022
Memperbaiki masalah di 11.2.1:
- Membuat
com.microsoft.azure:msal4j
dependensi opsional - Memperbaiki bug pembatalan kueri yang terjadi secara terputus-putus dalam kueri batch
Unduh Microsoft JDBC Driver 11.2.1 untuk SQL Server (zip)
Unduh Microsoft JDBC Driver 11.2.1 untuk SQL Server (tar.gz)
Jika Anda perlu mengunduh driver dalam bahasa selain yang terdeteksi untuk Anda, Anda dapat menggunakan tautan langsung ini.
Untuk driver dalam file zip: Cina (Disederhanakan) | Cina (Tradisional) | Inggris (Amerika Serikat) | Prancis | Jerman | Italia | | Portugis Korea | (Brasil) | Spanyol Rusia |
Untuk driver dalam file tar.gz: Cina (Sederhana) | Cina (Tradisional) | Inggris (Amerika Serikat) | Prancis | Jerman | Italia | | Portugis Korea | (Brasil) | Spanyol Rusia |
Nomor rilis: 11.2.0
Dirilis: 4 Agustus 2022
Unduh Microsoft JDBC Driver 11.2.0 untuk SQL Server (zip)
Unduh Microsoft JDBC Driver 11.2.0 untuk SQL Server (tar.gz)
Jika Anda perlu mengunduh driver dalam bahasa selain yang terdeteksi untuk Anda, Anda dapat menggunakan tautan langsung ini.
Untuk driver dalam file zip: Cina (Disederhanakan) | Cina (Tradisional) | Inggris (Amerika Serikat) | Prancis | Jerman | Italia | | Portugis Korea | (Brasil) | Spanyol Rusia |
Untuk driver dalam file tar.gz: Cina (Sederhana) | Cina (Tradisional) | Inggris (Amerika Serikat) | Prancis | Jerman | Italia | | Portugis Korea | (Brasil) | Spanyol Rusia |
Fitur baru di 11.2
Fitur | Detail |
---|---|
Dukungan Java 18 | Driver sekarang kompatibel dengan Java Development Kit (JDK) versi 18.0 selain JDK 17.0, 11.0 dan 1.8. |
Menambahkan Dukungan IPv6 yang Dapat Dikonfigurasi | Preferensi alamat IP untuk aplikasi klien sekarang dapat diatur antara IPv4 dan IPv6. Gunakan pengaturan koneksi baru ipaddresspreference untuk mengontrol perilaku. Untuk informasi selengkapnya, lihat Mengatur properti koneksi. |
Menambahkan dukungan untuk menyiapkan pilihan metode | Menambahkan properti string koneksi baru prepareMethod untuk beralih antara penggunaan sp_prepare dan sp_prepexec. Gunakan pengaturan koneksi baru prepareMethod untuk mengontrol perilaku. Untuk informasi selengkapnya, lihat Mengatur properti koneksi. |
Menambahkan properti koneksi serverCertificate untuk encrypt=strict | Menambahkan properti serverCertificate yang merupakan jalur ke file sertifikat server (dalam format PEM). Digunakan untuk validasi saat menggunakan enkripsi diatur ke ketat. Untuk informasi selengkapnya, lihat Mengatur properti koneksi. |
Panggilan metadata parameter cache | Informasi terkait enkripsi untuk kueri berparameter sekarang dapat di-cache. Lihat Menggunakan Always Encrypted dengan driver JDBC. |
Menambahkan dukungan untuk penyisipan massal nilai GUID null | Mengatasi masalah saat penyisipan nilai null tidak dimungkinkan dalam mode penyisipan massal. |
Menambahkan dukungan untuk penembolokan token identitas terkelola | Memungkinkan penembolokan token yang diperoleh dari titik akhir identitas terkelola. |
Perubahan dalam 11.2
Ubah | Detail |
---|---|
Dukungan TDS 8.0 dengan menambahkan opsi "ketat" untuk mengenkripsi properti koneksi | Properti koneksi BREAKING CHANGE Encrypt sekarang berjenis string. |
Menambahkan pemeriksaan untuk ALPN yang dinegosiasikan | Pemeriksaan untuk memastikan Protokol Lapisan Aplikasi berhasil dinegosiasikan. |
Menambahkan opsi untuk enclaveAttestationProtocol | Menambahkan opsi untuk NONE protokol sehingga enklave aman dapat digunakan tanpa pengesahan. |
Izinkan serverName diurutkan ulang di string koneksi | Validasi bahwa bidang serverName dari string koneksi tidak memiliki tanda sama dengan. |
Menambahkan pengelogan kesalahan yang lebih baik untuk pustaka MSAL yang hilang | Menambahkan pesan kesalahan ketika MSAL hilang dalam kasus ActiveDirectoryServicePrincipal . |
Batas waktu Ketahanan Koneksi Diam yang difaktorkan ulang untuk menggunakan SharedTimer yang ada | Peningkatan efisiensi dengan Ketahanan Koneksi Menganggur dengan menggunakan SharedTimer yang ada. |
Kirim TDS versi 8 di Login7 saat dalam mode ketat | Menambahkan informasi tambahan ke paket Login7 dengan menyertakan TDS versi 8 saat encrypt=strict. |
Mengubah nilai loginTimeout default menjadi 30 detik | Mengubah nilai loginTimeout default dari 15 detik menjadi 30 detik untuk memungkinkan lebih banyak waktu agar koneksi awal diselesaikan sebelum waktu habis. |
msal4j dependensi sekarang eksplisit |
Menambahkan dependensi eksplisit untuk msal4j (merupakan dependensi transitif dalam rilis sebelumnya). |
Dependensi yang diperbarui | Versi dependensi yang diperbarui untuk azure-identity , azure-security-keyvault-keys . |
Perbaikan di 11.2
Perbaikan | Detail |
---|---|
Memperbaiki kesalahan yang disebabkan oleh preparedMethod=prepare | Memperbaiki kesalahan penanganan pernyataan null terputus-terputus yang disebabkan oleh sp_prepare saat digunakan dengan kueri batch Masalah GitHub #1880. |
Memperbaiki kesalahan saat membuat beberapa koneksi secara paralel dapat melempar IndexOutOfBoundsException | Memperbaiki kondisi balapan dengan addressList, yang dapat mengakibatkan IndexOutOfBoundsException saat membuat beberapa koneksi Masalah GitHub #1852. |
Pernyataan tetap gagal terjadi saat membatalkan pernyataan "sisipkan ke" | Memperbaiki masalah di mana driver dapat menegaskan saat membatalkan pernyataan Masalah GitHub #1849. |
Memperbaiki pengecualian yang tidak dilemparkan seperti yang diharapkan ketika sesi dimatikan dalam database SQL | Menambahkan pemeriksaan token status DONE_ERROR, yang mungkin terjadi dari sesi yang dimatikan di server Masalah GitHub #1846. |
Interval Coba Lagi Identitas Terkelola | Memperbaiki interval coba lagi Identitas Terkelola untuk mencadangkan Masalah GitHub secara eksponensial dengan benar #1765. |
Menghapus panggilan tambahan untuk mengeksekusiCommand() dalam connectionCommand() | Menghapus panggilan tambahan untuk menjalankanCommand, yang menyebabkan masalah performa untuk beberapa pengguna Masalah GitHub #1669. |
Memperbaiki kesalahan token yang tidak diketahui dengan selectMethod | Memperbaiki kesalahan 0xA3 token yang tidak diketahui saat selectMethod kursor digunakan dengan klasifikasi data. |
10.2
Unduh Microsoft JDBC Driver 10.2.3 untuk SQL Server (zip)
Unduh Microsoft JDBC Driver 10.2.3 untuk SQL Server (tar.gz)
Nomor rilis: 10.2.3
Dirilis: 12 Januari 2023
Jika Anda perlu mengunduh driver dalam bahasa selain yang terdeteksi untuk Anda, Anda dapat menggunakan tautan langsung ini.
Untuk driver dalam file zip: Cina (Disederhanakan) | Cina (Tradisional) | Inggris (Amerika Serikat) | Prancis | Jerman | Italia | | Portugis Korea | (Brasil) | Spanyol Rusia |
Untuk driver dalam file tar.gz: Cina (Sederhana) | Cina (Tradisional) | Inggris (Amerika Serikat) | Prancis | Jerman | Italia | | Portugis Korea | (Brasil) | Spanyol Rusia |
Nomor rilis: 10.2.2
Dirilis: 13 Desember 2022
Unduh Microsoft JDBC Driver 10.2.2 untuk SQL Server (zip)
Unduh Microsoft JDBC Driver 10.2.2 untuk SQL Server (tar.gz)
Jika Anda perlu mengunduh driver dalam bahasa selain yang terdeteksi untuk Anda, Anda dapat menggunakan tautan langsung ini.
Untuk driver dalam file zip: Cina (Disederhanakan) | Cina (Tradisional) | Inggris (Amerika Serikat) | Prancis | Jerman | Italia | | Portugis Korea | (Brasil) | Spanyol Rusia |
Untuk driver dalam file tar.gz: Cina (Sederhana) | Cina (Tradisional) | Inggris (Amerika Serikat) | Prancis | Jerman | Italia | | Portugis Korea | (Brasil) | Spanyol Rusia |
Nomor rilis: 10.2.1
Dirilis: 12 Mei 2022
Unduh Microsoft JDBC Driver 10.2.1 untuk SQL Server (zip)
Unduh Microsoft JDBC Driver 10.2.1 untuk SQL Server (tar.gz)
Jika Anda perlu mengunduh driver dalam bahasa selain yang terdeteksi untuk Anda, Anda dapat menggunakan tautan langsung ini.
Untuk driver dalam file zip: Cina (Disederhanakan) | Cina (Tradisional) | Inggris (Amerika Serikat) | Prancis | Jerman | Italia | | Portugis Korea | (Brasil) | Spanyol Rusia |
Untuk driver dalam file tar.gz: Cina (Sederhana) | Cina (Tradisional) | Inggris (Amerika Serikat) | Prancis | Jerman | Italia | | Portugis Korea | (Brasil) | Spanyol Rusia |
10.2 Kepatuhan
Perubahan kepatuhan | Detail |
---|---|
Unduh pembaruan terbaru untuk JDBC Driver 10.2. | • GitHub, 10.2.0. • Maven Tengah. |
Sepenuhnya mematuhi Spesifikasi JDBC API 4.2. | Jar dalam paket 10.2 dinamai sesuai dengan kompatibilitas versi Java. Misalnya, file mssql-jdbc-10.20.jre17.jar dari paket 10.2 harus digunakan dengan Java 17. |
Kompatibel dengan Java Development Kit (JDK) versi 17.0, 11.0, dan 1.8. | Microsoft JDBC Driver 10.2 untuk SQL Server sekarang kompatibel dengan Java Development Kit (JDK) versi 17.0 selain JDK 11.0 dan 1.8. |
10.2 Rilis
Nomor rilis: 10.2.3
Dirilis: 12 Januari 2023
Memperbaiki masalah dalam 10.2.3:
- Memperbaiki jumlah pembaruan yang salah ketika waktu habis terjadi dalam kueri batch
- Memperbaiki tanggal kedaluwarsa token yang salah saat menggunakan Azure Functions
- Memperbaiki status SQL null dan kode kesalahan nol saat pengecualian database dilemparkan
Nomor rilis: 10.2.2
Dirilis: 13 Desember 2022
Memperbaiki masalah dalam 10.2.2:
- Cache pernyataan yang disiapkan dengan jelas pada rekoneksi ketahanan koneksi diam
- Perbaikan untuk mengatur opsi keepAlive yang diperluas
- Memperbaiki masalah di mana driver dapat menegaskan saat membatalkan pernyataan
- Memperbaiki indeks pernyataan yang dapat dipanggil di luar kesalahan batas
- Memperbaiki masalah tidak memeriksa kesalahan token DONE sehingga pengecualian diabaikan
- Memperbaiki bug pembatalan kueri
Nomor rilis: 10.2.1
Dirilis: 12 Mei 2022
Memperbaiki masalah dalam 10.2.1:
- Batas waktu Ketahanan Koneksi Diam yang diubah untuk menggunakan SharedTimer yang ada
- Memperbaiki interval coba lagi autentikasi Identitas Terkelola untuk mundur secara eksponensial dengan benar
- Menghapus panggilan asing untuk mengeksekusiCommand() dalam connectionCommand()
Nomor rilis: 10.2.0
Dirilis: 31 Januari 2022
Unduh Microsoft JDBC Driver 10.2.0 untuk SQL Server (zip)
Unduh Microsoft JDBC Driver 10.2.0 untuk SQL Server (tar.gz)
Jika Anda perlu mengunduh driver dalam bahasa selain yang terdeteksi untuk Anda, Anda dapat menggunakan tautan langsung ini.
Untuk driver dalam file zip: Cina (Disederhanakan) | Cina (Tradisional) | Inggris (Amerika Serikat) | Prancis | Jerman | Italia | | Portugis Korea | (Brasil) | Spanyol Rusia |
Untuk driver dalam file tar.gz: Cina (Sederhana) | Cina (Tradisional) | Inggris (Amerika Serikat) | Prancis | Jerman | Italia | | Portugis Korea | (Brasil) | Spanyol Rusia |
Fitur baru di 10.2
Fitur | Detail |
---|---|
Dukungan Java 17 | Driver sekarang kompatibel dengan Java Development Kit (JDK) versi 17.0 selain JDK 11.0 dan 1.8. |
Dukungan Ketahanan Koneksi Menganggur | Ketahanan Koneksi Diam sekarang didukung. Lihat Ketahanan Koneksi Diam. |
Penyedia Penyimpanan Kunci Multi-pengguna | Driver sekarang mendukung penyedia Key Store di tingkat koneksi dan pernyataan untuk mendukung skenario multi-pengguna. Lihat Menggunakan Always Encrypted dengan driver JDBC. |
Perubahan dalam 10.2
Ubah | Detail |
---|---|
Enkripsi default ke true | ENKRIPSI BREAKING CHANGE TLS diaktifkan secara default. |
Validasi sertifikat saat enkripsi = false | BREAKING CHANGE Saat enkripsi = false tetapi server memerlukan enkripsi, sertifikat divalidasi berdasarkan pengaturan koneksi trustServerCertificate. |
aadSecurePrincipalId dan aadSecurePrincipalSecret tidak digunakan lagi | Properti koneksi aadSecurePrincipalId dan aadSecurePrincipalSecret telah ditolak. Gunakan nama pengguna dan kata sandi sebagai gantinya. |
getAADSecretPrincipalId API dihapus | BREAKING CHANGE API getAADSecretPrincipalId telah dihapus karena alasan keamanan. |
dukungan SQL_Variant | Menambahkan dukungan untuk SQL_Variant jenis data saat mengambil DateTimeOffset. |
Nonblocking acak di Linux | Diperbarui untuk menggunakan panggilan acak yang tidak diblokir saat membuat GUID untuk paket enklave. |
Resolusi CNAME untuk realm | Menambahkan resolusi CNAME saat realm ditentukan. |
Dependensi yang diperbarui | Versi dependensi yang diperbarui untuk azure-identity , , azure-security-keyvault-keys gson , dan bouncycastle . |
Perbaikan dalam 10.2
Perbaikan | Detail |
---|---|
TDSParser terjebak di TDS_COLMETADATA | Diperbaiki: TDSParser terjebak pada TDS_COLMETADATA, yang dapat mengakibatkan hang untuk kueri tertentu. Masalah GitHub #1661 |
9,4
Unduh Microsoft JDBC Driver 9.4.1 untuk SQL Server (zip)
Unduh Microsoft JDBC Driver 9.4.1 untuk SQL Server (tar.gz)
Nomor rilis: 9.4.1
Dirilis: 7 Desember 2021
Jika Anda perlu mengunduh driver dalam bahasa selain yang terdeteksi untuk Anda, Anda dapat menggunakan tautan langsung ini.
Untuk driver dalam file zip: Cina (Disederhanakan) | Cina (Tradisional) | Inggris (Amerika Serikat) | Prancis | Jerman | Italia | | Portugis Korea | (Brasil) | Spanyol Rusia |
Untuk driver dalam file tar.gz: Cina (Sederhana) | Cina (Tradisional) | Inggris (Amerika Serikat) | Prancis | Jerman | Italia | | Portugis Korea | (Brasil) | Spanyol Rusia |
9.4 Kepatuhan
Perubahan kepatuhan | Detail |
---|---|
Unduh pembaruan terbaru untuk JDBC Driver 9.4. | • GitHub, 9.4.0. • Maven Tengah. |
Sepenuhnya mematuhi Spesifikasi JDBC API 4.2. | Jar dalam paket 9.4 dinamai sesuai dengan kompatibilitas versi Java. Misalnya, file mssql-jdbc-9.4.0.jre16.jar dari paket 9.4 harus digunakan dengan Java 16. |
Kompatibel dengan Java Development Kit (JDK) versi 16.0, 11.0, dan 1.8. | Microsoft JDBC Driver 9.4 untuk SQL Server sekarang kompatibel dengan Java Development Kit (JDK) versi 16.0 selain JDK 11.0 dan 1.8. |
9.4 Rilis
Nomor versi: 9.4.1
Dirilis: 07 Desember 2021
Memperbaiki masalah di 9.4.1:
- Memperbaiki potensi hang ketika driver mengalami TDS_COLMETADATA yang tidak didukung
- Konversi tetap LocalDateTime dan LocalTime ke String dalam Salinan Massal
Nomor versi: 9.4.0
Dirilis: 30 Juli 2021
Unduh Microsoft JDBC Driver 9.4.0 untuk SQL Server (zip)
Unduh Microsoft JDBC Driver 9.4.0 untuk SQL Server (tar.gz)
Jika Anda perlu mengunduh driver dalam bahasa selain yang terdeteksi untuk Anda, Anda dapat menggunakan tautan langsung ini.
Untuk driver dalam file zip: Cina (Disederhanakan) | Cina (Tradisional) | Inggris (Amerika Serikat) | Prancis | Jerman | Italia | | Portugis Korea | (Brasil) | Spanyol Rusia |
Untuk driver dalam file tar.gz: Cina (Sederhana) | Cina (Tradisional) | Inggris (Amerika Serikat) | Prancis | Jerman | Italia | | Portugis Korea | (Brasil) | Spanyol Rusia |
Fitur baru di 9.4
Fitur | Detail |
---|---|
Dukungan Java 16 | Driver sekarang kompatibel dengan Java Development Kit (JDK) versi 16.0 selain JDK 11.0 dan 1.8. |
Dukungan koneksi replikasi | Koneksi replikasi sekarang didukung. Lihat Mengatur properti koneksi. |
Ranah autentikasi Kerberos kustom | Driver sekarang mendukung penentuan realm autentikasi kustom saat menggunakan autentikasi Kerberos. Lihat Mengatur properti koneksi. |
Buka Coba Lagi Koneksi | connectRetryCount Properti koneksi dan connectRetryInterval telah ditambahkan untuk mengonfigurasi percobaan ulang otomatis saat membuka koneksi. Lihat Mengatur properti koneksi untuk detail tentang properti baru ini. |
Perubahan dalam 9.4
Ubah | Detail |
---|---|
Penyedia Azure Key Vault | Beberapa koneksi berturut-turut dapat dibuka yang menentukan informasi penyedia Azure Key Vault yang berbeda. |
Pesan kesalahan yang diperbarui | Pesan kesalahan yang terkait dengan pengecualian Enclave sekarang menyertakan tautan ke panduan pemecahan masalah. Pesan kesalahan yang terkait dengan kegagalan autentikasi Direktori Aktif sekarang menyertakan string kesalahan dari pustaka yang mendasar. |
Versi driver dikirim ke server | Versi driver sekarang dikirim dengan benar ke database selama PRELOGIN . |
ID proses klien | ID proses klien sekarang dikirim ke server saat berjalan di Java 9+. Java 8 menyimpan fungsionalitas pengiriman 0 sebelumnya untuk ID proses klien. |
Dependensi yang diperbarui | Versi dependensi yang diperbarui untuk azure-identity , , azure-security-keyvault-keys gson , antlr , dan bouncycastle . |
Menghapus referensi yang tidak perlu | Menghapus referensi kelas khusus Java 9 yang tidak digunakan dari jar Java 8 |
Perbaikan dalam 9.4
Perbaikan | Detail |
---|---|
Masalah GitHub #1499 | Diperbaiki: Batch gagal ketika selalu dienkripsi diaktifkan di string koneksi dan clearParameters dipanggil. |
Masalah GitHub #1632 | Diperbaiki: Kebocoran memori kecil pada koneksi baru. |
Masalah GitHub #1565 | Memperbaiki masalah di mana trustStorePassword null saat menggunakan applicationIntent=ReadOnly |
Masalah GitHub #1568 | Memperbaiki masalah saat token yang dialihkan berisi instans bernama dalam nama server |
Masalah GitHub #1531 | Memperbaiki potensi luapan bilangan bulat di TDSWriter.writeString() |
9.2
Unduh Microsoft JDBC Driver 9.2.1 untuk SQL Server (zip)
Unduh Microsoft JDBC Driver 9.2.1 untuk SQL Server (tar.gz)
Nomor versi: 9.2.1
Dirilis: 02 Maret 2021
Jika Anda perlu mengunduh driver dalam bahasa selain yang terdeteksi untuk Anda, Anda dapat menggunakan tautan langsung ini.
Untuk driver dalam file zip: Cina (Disederhanakan) | Cina (Tradisional) | Inggris (Amerika Serikat) | Prancis | Jerman | Italia | | Portugis Korea | (Brasil) | Spanyol Rusia |
Untuk driver dalam file tar.gz: Cina (Sederhana) | Cina (Tradisional) | Inggris (Amerika Serikat) | Prancis | Jerman | Italia | | Portugis Korea | (Brasil) | Spanyol Rusia |
9.2 Kepatuhan
Perubahan kepatuhan | Detail |
---|---|
Unduh pembaruan terbaru untuk JDBC Driver 9.2. | • GitHub, 9.2.1. • Maven Tengah. |
Sepenuhnya mematuhi Spesifikasi JDBC API 4.2. | Jar dalam paket 9.2 dinamai sesuai dengan kompatibilitas versi Java. Misalnya, file mssql-jdbc-9.2.1.jre15.jar dari paket 9.2 harus digunakan dengan Java 15. |
Kompatibel dengan Java Development Kit (JDK) versi 15.0, 11.0, dan 1.8. | Microsoft JDBC Driver 9.2 untuk SQL Server sekarang kompatibel dengan Java Development Kit (JDK) versi 15.0 selain JDK 11.0 dan 1.8. |
9.2 Rilis
Nomor versi: 9.2.1
Dirilis: 02 Maret 2021
Memperbaiki masalah di 9.2.1:
- Memperbaiki masalah dengan rahasia klien yang kosong selama autentikasi ActiveDirectoryServicePrincipal di lingkungan Azure.
Nomor versi: 9.2.0
Dirilis: 29 Januari 2021
Unduh Microsoft JDBC Driver 9.2.0 untuk SQL Server (zip)
Unduh Microsoft JDBC Driver 9.2.0 untuk SQL Server (tar.gz)
Jika Anda perlu mengunduh driver dalam bahasa selain yang terdeteksi untuk Anda, Anda dapat menggunakan tautan langsung ini.
Untuk driver dalam file zip: Cina (Disederhanakan) | Cina (Tradisional) | Inggris (Amerika Serikat) | Prancis | Jerman | Italia | | Portugis Korea | (Brasil) | Spanyol Rusia |
Untuk driver dalam file tar.gz: Cina (Sederhana) | Cina (Tradisional) | Inggris (Amerika Serikat) | Prancis | Jerman | Italia | | Portugis Korea | (Brasil) | Spanyol Rusia |
Dukungan untuk JDK 15
Microsoft JDBC Driver 9.2 untuk SQL Server sekarang kompatibel dengan Java Development Kit (JDK) versi 15.0 selain JDK 11.0 dan 1.8.
Menambahkan dukungan untuk Autentikasi Interaktif Azure Active Directory
Penambahan jenis autentikasi | Detail |
---|---|
Microsoft JDBC Driver 9.2 untuk SQL Server sekarang mendukung autentikasi ke Azure Key Vault melalui autentikasi interaktif. | Lihat Menyambungkan menggunakan autentikasi Azure Active Directory. |
Menambahkan dukungan untuk Autentikasi Perwakilan Layanan Azure Active Directory
Penambahan jenis autentikasi | Detail |
---|---|
Microsoft JDBC Driver 9.2 untuk SQL Server sekarang mendukung autentikasi ke Azure Key Vault menggunakan ID klien dan rahasia identitas perwakilan layanan. | Lihat Menyambungkan menggunakan autentikasi Azure Active Directory. |
Pustaka Azure Key Vault yang diperbarui untuk menggunakan pustaka Azure Key Vault modern
Perubahan pustaka untuk Azure Key Vault | Detail |
---|---|
Microsoft JDBC Driver 9.2 bermigrasi dari pustaka dan ADAL pustaka Azure Key Vault generasi sebelumnya ke Azure Key Vault yang lebih modern dan setara Azure Identity. |
PERUBAHAN DEPENDENSI Pastikan Anda memperbarui dependensi aplikasi jika Anda memanfaatkan autentikasi Azure Active Directory atau Azure Key Vault. Lihat persyaratan dependensi saat bekerja dengan penyedia Azure Key Vault atau autentikasi Azure Active Directory |
Mengaktifkan useBulkCopyForBatchInsert untuk server non-Azure Synapse Analytics
perubahan useBulkCopyForBatchInsert untuk server non Azure Synapse Analytics | Detail |
---|---|
Microsoft JDBC Driver 9.2 sekarang memungkinkan API salinan massal untuk operasi penyisipan batch terhadap server non-Azure Synapse Analytics. | Lihat Menggunakan API salinan massal untuk operasi penyisipan batch. |
8.4
Unduh Microsoft JDBC Driver 8.4 untuk SQL Server (zip)
Unduh Microsoft JDBC Driver 8.4 untuk SQL Server (tar.gz)
Nomor versi: 8.4.1
Dirilis: 27 Agustus 2020
Jika Anda perlu mengunduh driver dalam bahasa selain yang terdeteksi untuk Anda, Anda dapat menggunakan tautan langsung ini.
Untuk driver dalam file zip: Cina (Disederhanakan) | Cina (Tradisional) | Inggris (Amerika Serikat) | Prancis | Jerman | Italia | | Portugis Korea | (Brasil) | Spanyol Rusia |
Untuk driver dalam file tar.gz: Cina (Sederhana) | Cina (Tradisional) | Inggris (Amerika Serikat) | Prancis | Jerman | Italia | | Portugis Korea | (Brasil) | Spanyol Rusia |
8.4 Kepatuhan
Perubahan kepatuhan | Detail |
---|---|
Unduh pembaruan terbaru untuk JDBC Driver 8.4. | • GitHub, 8.4.1. • Maven Tengah. |
Sepenuhnya mematuhi Spesifikasi JDBC API 4.2. | Jar dalam paket 8.4 dinamai sesuai dengan kompatibilitas versi Java. Misalnya, file mssql-jdbc-8.4.1.jre14.jar dari paket 8.4 harus digunakan dengan Java 14. |
Kompatibel dengan Java Development Kit (JDK) versi 14.0, 11.0, dan 1.8. | Microsoft JDBC Driver 8.4 untuk SQL Server sekarang kompatibel dengan Java Development Kit (JDK) versi 14.0 selain JDK 11.0 dan 1.8. |
8.4 Rilis
Nomor versi: 8.4.1
Dirilis: 27 Agustus 2020
Masalah yang diperbaiki:
- Memperbaiki masalah yang
SQLServerConnectionPoolProxy
tidak kompatibel dengandelayLoadingLobs
- Memperbaiki potensi
NullPointerException
masalah dengandelayLoadingLobs
- Memperbaiki masalah dengan mendekripsi kunci enkripsi kolom saat menggunakan Windows Certificate Store
Nomor versi: 8.4.0
Dirilis: 31 Juli 2020
Dukungan untuk JDK 14
Microsoft JDBC Driver 8.4 untuk SQL Server sekarang kompatibel dengan Java Development Kit (JDK) versi 14.0 selain JDK 11.0 dan 1.8.
Menambahkan dukungan untuk autentikasi ke Azure Key Vault menggunakan Identitas Terkelola
Penambahan jenis autentikasi | Detail |
---|---|
Microsoft JDBC Driver 8.4 untuk SQL Server sekarang mendukung autentikasi ke Azure Key Vault menggunakan Identitas Terkelola. | Lihat Menggunakan Always Encrypted dengan driver JDBC. |
Dukungan yang diperluas untuk salinan massal untuk Azure Data Warehouse
Menyalin perubahan massal untuk Azure Data Warehouse | Detail |
---|---|
Microsoft JDBC Driver 8.4 menambahkan properti koneksi baru, sendTemporalDataTypesAsStringForBulkCopy . Properti boolean ini TRUE secara default. |
Lihat Menggunakan salinan massal dengan driver JDBC. |
Menambahkan dukungan untuk penembolokan DNS Azure SQL
Penembolokan DNS | Detail |
---|---|
Microsoft JDBC Driver 8.4 untuk SQL Server sekarang mendukung penembolokan DNS terhadap SQL Server di Azure VM. |
Menambahkan kompatibilitas mundur untuk objek LOB streaming
LOB Streaming | Detail |
---|---|
Microsoft JDBC Driver 8.4 untuk SQL Server menambahkan properti delayLoadingLobs koneksi baru . |
Pengaturan delayLoadingLobs ke FALSE menyebabkan semua objek LOB yang diambil dari ResultSet tidak dialirkan. Pengaturan ini berarti bahwa driver memuat seluruh objek LOB ke dalam memori sekaligus, mirip dengan bagaimana driver berfungsi sebelum rilis versi 6.4. |
Menambahkan dukungan untuk autentikasi sertifikat klien untuk skenario loopback
Autentikasi sertifikat klien | Detail |
---|---|
Microsoft JDBC Driver 8.4 untuk SQL Server menambahkan metode autentikasi baru yang disebut autentikasi sertifikat klien untuk skenario loopback. | Lihat Autentikasi Sertifikat Klien untuk Skenario Loopback. |
8.2
Unduh Microsoft JDBC Driver 8.2 untuk SQL Server (zip)
Unduh Microsoft JDBC Driver 8.2 untuk SQL Server (tar.gz)
Nomor versi: 8.2.2 Dirilis: 24 Maret 2020
Jika Anda perlu mengunduh driver dalam bahasa selain yang terdeteksi untuk Anda, Anda dapat menggunakan tautan langsung ini.
Untuk driver dalam file zip: Cina (Disederhanakan) | Cina (Tradisional) | Inggris (Amerika Serikat) | Prancis | Jerman | Italia | | Portugis Korea | (Brasil) | Spanyol Rusia |
Untuk driver dalam file tar.gz: Cina (Sederhana) | Cina (Tradisional) | Inggris (Amerika Serikat) | Prancis | Jerman | Italia | | Portugis Korea | (Brasil) | Spanyol Rusia |
8.2 Kepatuhan
Perubahan kepatuhan | Detail |
---|---|
Unduh pembaruan terbaru untuk JDBC Driver 8.2. | • GitHub, 8.2.2. • Maven Tengah. |
Sepenuhnya mematuhi Spesifikasi JDBC API 4.2. | Jar dalam paket 8.2 dinamai sesuai dengan kompatibilitas versi Java. Misalnya, file mssql-jdbc-8.2.2.jre11.jar dari paket 8.2 harus digunakan dengan Java 11. |
Kompatibel dengan Java Development Kit (JDK) versi 13.0, 11.0, dan 1.8. | Microsoft JDBC Driver 8.2 untuk SQL Server sekarang kompatibel dengan Java Development Kit (JDK) versi 13.0 selain JDK 11.0 dan 1.8. |
8.2 Rilis
Nomor versi: 8.2.2
Dirilis: 24 Maret 2020
Masalah yang diperbaiki:
- Menambahkan opsi untuk mengonfigurasi daftar titik akhir Azure Key Vault tepercaya
Nomor versi: 8.2.1
Dirilis: 26 Februari 2020
Masalah yang diperbaiki:
- Memperbaiki potensi
NullPointerException
masalah saat mengambil data sebagaijava.time.LocalTime
ataujava.time.LocalDate
mengetik denganSQLServerResultSet.getObject()
Nomor versi: 8.2.0
Dirilis: 31 Januari 2020
Dukungan untuk JDK 13
Microsoft JDBC Driver 8.2 untuk SQL Server sekarang kompatibel dengan Java Development Kit (JDK) versi 13.0 selain JDK 11.0 dan 1.8.
Always Encrypted dengan kantong aman
Perubahan Always Encrypted | Detail |
---|---|
Microsoft JDBC Driver 8.2 untuk SQL Server sekarang mendukung Always Encrypted dengan enklave aman. Detailnya dapat ditemukan di sini: Always Encrypted dengan enklave aman. | |
Detail selengkapnya dan kode sampel. | Lihat Always Encrypted dengan enklave aman. |
Peningkatan Performa saat Mengambil Jenis Data Temporal dari SQL Server 1
Jenis Data Temporal berubah | Detail |
---|---|
Microsoft JDBC Driver 8.2 untuk SQL Server telah meningkatkan performa saat mengambil jenis data temporal dari SQL Server. | Perubahan ini menghilangkan konversi jenis data temporal yang tidak perlu dengan menghilangkan penggunaan java.util.Calendar sedapat mungkin. |
Daftar jenis data temporal berikut dipengaruhi oleh peningkatan performa ini; dalam format "jenis data SQL Server" (pemetaan Java). | date (java.sql.Date), datetime (java.sql.Timestamp), datetime2 (java.sql.Timestamp), smalldatetime (java.sql.Timestamp), dan time (java.sql.Time). |
1 Karena perbedaan bagaimana zona waktu ditangani antara java.util.Calendar dan java.time.LocalDateTime API, jenis data temporal dengan objek java.util.Calendar yang disediakan pengguna yang terkait dengannya atau microsoft.sql.DateTimeOffset datatypes tidak mendapat manfaat dari peningkatan ini.
Penyebaran mssql-jdbc_auth-version-arch<><>.dll (sebelumnya sqljdbc_auth.dll) ke Repositori Maven
perubahan sqljdbc_auth.dll | Detail |
---|---|
Dimulai dengan Microsoft JDBC Driver 8.2 untuk SQL Server, driver mengandalkan mssql-jdbc_auth-version-arch>>.dll alih-alih<< sqljdbc_auth.dll untuk menggunakan fitur Autentikasi Azure Active Directory. | |
DLL juga telah diunggah ke repositori Maven untuk akses yang lebih mudah. | Lihat halaman ini. |
8.2 Masalah yang diketahui
Masalah umum | Detail |
---|---|
Saat menggunakan Always Encrypted dengan enklave aman dengan Java 8. | Pengguna harus menyertakan Penyedia BouncyCastle sebagai dependensi ATAU memetakan/memuat penyedia keamanan, yang mendukung algoritma tanda tangan RSASSA-PSS. |
7.4.1
Unduh Microsoft JDBC Driver 7.4.1 untuk SQL Server (exe ekstraksi mandiri)
Unduh Microsoft JDBC Driver 7.4.1 untuk SQL Server (tar.gz)
Nomor versi: 7.4.1
Dirilis: 2 Agustus 2019
Jika Anda perlu mengunduh driver dalam bahasa selain yang terdeteksi untuk Anda, Anda dapat menggunakan tautan langsung ini.
Untuk driver dalam file exe ekstraksi mandiri: Cina (Disederhanakan) | Cina (Tradisional) | Inggris (Amerika Serikat) | Prancis | Jerman | Italia | | | Jepang Portugis Korea (Brasil) | Spanyol Rusia |
Untuk driver dalam file tar.gz: Cina (Sederhana) | Cina (Tradisional) | Inggris (Amerika Serikat) | Prancis | Jerman | Italia | | Portugis Korea | (Brasil) | Spanyol Rusia |
7.4 Kepatuhan
Perubahan kepatuhan | Detail |
---|---|
Unduh pembaruan terbaru untuk Driver JDBC 7.4. | • GitHub, 7.4.1. • Maven Tengah. |
Sepenuhnya mematuhi Spesifikasi JDBC API 4.2. | Jar dalam paket 7.4 dinamai sesuai dengan kompatibilitas versi Java. Misalnya, file mssql-jdbc-7.4.1.jre11.jar dari paket 7.4 harus digunakan dengan Java 11. |
Kompatibel dengan Java Development Kit (JDK) versi 12.0, 11.0, dan 1.8. | Microsoft JDBC Driver 7.4 untuk SQL Server sekarang kompatibel dengan Java Development Kit (JDK) versi 12.0 selain JDK 11.0 dan 1.8. |
7.4 Rilis
Nomor versi: 7.4.1
Dirilis: 2 Agustus 2019
Masalah yang diperbaiki:
- Mengembalikan implementasi baru
hashCode()
danequals()
API dariSQLServerDataTable
danSQLServerDataColumn
saat perubahan API mengalami kompatibilitas mundur
Nomor versi: 7.4.0
Dirilis: 31 Juli 2019
Dukungan untuk JDK 12
Microsoft JDBC Driver 7.4 untuk SQL Server sekarang kompatibel dengan Java Development Kit (JDK) versi 12.0 selain JDK 11.0 dan 1.8.
Memperkenalkan autentikasi NTLM
Perubahan NTLM | Detail |
---|---|
Mendukung mode autentikasi NTLM. | Mode autentikasi ini memungkinkan klien Windows dan non-Windows untuk mengautentikasi diri mereka terhadap SQL Server menggunakan pengguna domain Windows. |
Detail selengkapnya dan aplikasi sampel untuk menggunakan mode autentikasi ini. | Lihat Menyambungkan menggunakan Autentikasi NTLM. |
Memperkenalkan kueri ParameterMetaData melalui useFmtOnly
perubahan useFmtOnly | Detail |
---|---|
properti koneksi useFmtOnly ditambahkan. | Fitur ini memungkinkan pengguna untuk secara opsional mengkueri ParameterMetaData melalui API warisan SET FMTONLY ON . Pengaturan ini berguna untuk skenario di mana sp_describe_undeclared_parameters tidak berfungsi seperti yang diharapkan. |
Detail dan batasan lebih lanjut. | Lihat Menggunakan useFmtOnly |
SDK Microsoft Azure Key Vault yang diperbarui untuk Java, versi 1.2.1
Perubahan SDK Key Vault | Detail |
---|---|
Memperbarui dependensi Maven-nya pada Microsoft Azure Key Vault SDK untuk Java ke versi 1.2.1. | |
Menghapus Microsoft Azure SDK untuk Key Vault WebKey sebagai dependensi Maven. | |
Detail lebih lanjut. | Lihat Dependensi fitur Driver Microsoft JDBC untuk SQL Server. |
7.4 Masalah yang diketahui
Masalah umum | Detail |
---|---|
Saat menggunakan Autentikasi NTLM. | Mengaktifkan Perlindungan Diperpanjang dan koneksi terenkripsi pada saat yang sama saat ini tidak didukung. |
Saat menggunakan useFmtOnly. | Ada beberapa masalah dengan fitur ini, yang disebabkan oleh kekurangan dalam logika penguraian SQL. Untuk informasi selengkapnya dan saran solusi, lihat Menggunakan useFmtOnly. |
7.2.2
Unduh Microsoft JDBC Driver 7.2.2 untuk SQL Server (exe ekstraksi mandiri)
Unduh Microsoft JDBC Driver 7.2.2 untuk SQL Server (tar.gz)
Nomor versi: 7.2.2
Dirilis: 16 April 2019
Jika Anda perlu mengunduh driver dalam bahasa selain yang terdeteksi untuk Anda, Anda dapat menggunakan tautan langsung ini.
Untuk driver dalam file exe ekstraksi mandiri: Cina (Disederhanakan) | Cina (Tradisional) | Inggris (Amerika Serikat) | Prancis | Jerman | Italia | | | Jepang Portugis Korea (Brasil) | Spanyol Rusia |
Untuk driver dalam file tar.gz: Cina (Sederhana) | Cina (Tradisional) | Inggris (Amerika Serikat) | Prancis | Jerman | Italia | | Portugis Korea | (Brasil) | Spanyol Rusia |
7.2 Kepatuhan
Perubahan kepatuhan | Detail |
---|---|
Unduh pembaruan terbaru untuk Driver JDBC 7.2. | • GitHub, 7.2.2. • Maven Tengah. |
Sepenuhnya mematuhi Spesifikasi JDBC API 4.2. | Jar dalam paket 7.2 dinamai sesuai dengan kompatibilitas versi Java. Misalnya, file mssql-jdbc-7.2.2.jre11.jar dari paket 7.2 harus digunakan dengan Java 11. |
Kompatibel dengan Java Development Kit (JDK) versi 11.0 selain JDK 1.8. | Microsoft JDBC Driver 7.2 untuk SQL Server sekarang kompatibel dengan Java Development Kit (JDK) versi 11.0 selain JDK 1.8. |
7.2 Rilis
Nomor versi: 7.2.2
Dirilis: 16 April 2019
Masalah yang diperbaiki:
- Memperbaiki masalah dengan ActivityID yang tidak dibersihkan dengan benar
Nomor versi: 7.2.1
Dirilis: 11 Februari 2019
Masalah yang diperbaiki:
- Memperbaiki masalah penguraian dengan kueri berparameter tertentu
Nomor versi: 7.2.0
Dirilis: 31 Januari 2019
Autentikasi Active Directory Managed Identity (MSI)
Perubahan MSI | Detail |
---|---|
Mendukung mode autentikasi Active Directory Managed Identity (MSI). | Mode autentikasi ini berlaku di Sumber Daya Azure dengan dukungan untuk fitur "Identitas" diaktifkan. Kedua jenis Identitas Terkelola (MSI) didukung oleh driver untuk memperoleh accessToken untuk membuat koneksi yang aman. |
Detail selengkapnya dan aplikasi sampel untuk menggunakan mode autentikasi ini. | Lihat Menyambungkan menggunakan Autentikasi Azure Active Directory. |
Memperkenalkan dukungan Open Service Gateway Initiative (OSGi)
Perubahan OSGi | Detail |
---|---|
Implementasi DataSourceFactory ditambahkan. | • org.osgi.service.jdbc.DataSourceFactory • com.microsoft.sqlserver.jdbc.osgi.SQLServerDataSourceFactory |
Implementasi aktivator ditambahkan. | • org.osgi.framework.BundleActivator • com.microsoft.sqlserver.jdbc.osgi.Activator |
Memperkenalkan API SQLServerError
Perubahan API kesalahan | Detail |
---|---|
SQLServerError API diperkenalkan. | Getter API untuk mengambil detail selengkapnya tentang kesalahan yang dihasilkan dari server. • SQLServerException.getSQLServerError() • SQLServerError |
Detail lebih lanjut. | Lihat Menangani Kesalahan. |
Pustaka Autentikasi Microsoft Azure Active Directory (ADAL4J) yang diperbarui untuk Java, versi 1.6.3
Perubahan ADAL4J | Detail |
---|---|
Memperbarui dependensi Maven-nya pada ADAL4J ke versi 1.6.3. | |
Memperkenalkan Java Client Runtime untuk AutoRest sebagai dependensi Maven, versi 1.6.5. | |
Detail lebih lanjut. | Lihat Dependensi fitur Driver Microsoft JDBC untuk SQL Server. |
SDK Microsoft Azure Key Vault yang diperbarui untuk Java, versi 1.2.0
Perubahan SDK Key Vault | Detail |
---|---|
Memperbarui dependensi Maven-nya pada Microsoft Azure Key Vault SDK untuk Java ke versi 1.2.0. | |
Memperkenalkan Microsoft Azure SDK untuk Key Vault WebKey sebagai dependensi Maven, versi 1.2.0. | |
Detail lebih lanjut. | Lihat Dependensi fitur Driver Microsoft JDBC untuk SQL Server. |
7.2 Masalah yang diketahui
Masalah umum | Detail |
---|---|
Kueri berparameter, dalam kasus tertentu. | Pembaruan versi 7.2.0, v7.2.1, dirilis pada Februari 2019 untuk mengatasi masalah ini. |
Membersihkan ActivityIds. | Pembaruan versi 7.2.1, v7.2.2, dirilis pada April 2019 untuk mengatasi masalah ini. |
7,0
Unduh Microsoft JDBC Driver 7.0 untuk SQL Server (exe ekstraksi mandiri)
Unduh Microsoft JDBC Driver 7.0 untuk SQL Server (tar.gz)
Nomor versi: 7.0.0
Dirilis: 31 Juli 2018
Jika Anda perlu mengunduh driver dalam bahasa selain yang terdeteksi untuk Anda, Anda dapat menggunakan tautan langsung ini.
Untuk driver dalam file exe ekstraksi mandiri: Cina (Disederhanakan) | Cina (Tradisional) | Inggris (Amerika Serikat) | Prancis | Jerman | Italia | | | Jepang Portugis Korea (Brasil) | Spanyol Rusia |
Untuk driver dalam file tar.gz: Cina (Sederhana) | Cina (Tradisional) | Inggris (Amerika Serikat) | Prancis | Jerman | Italia | | Portugis Korea | (Brasil) | Spanyol Rusia |
Microsoft JDBC Driver 7.0 untuk SQL Server sepenuhnya mematuhi Spesifikasi JDBC API 4.2. Jar dalam paket 7.0 dinamai sesuai dengan kompatibilitas versi Java. Misalnya, file mssql-jdbc-7.0.0.jre10.jar dari paket 7.0 harus digunakan dengan Java 10.
Dukungan untuk JDK 10
Microsoft JDBC Driver 7.0 untuk SQL Server sekarang kompatibel dengan Java Development Kit (JDK) versi 10.0 selain JDK 1.8. Pembaruan ini juga mengekspos driver seperti com.microsoft.sqlserver.jdbc
melalui file MANIFEST-nyaAutomatic-Module-Name
.
Dukungan untuk tipe data spasial
Microsoft JDBC Driver 7.0 untuk SQL Server sekarang menyediakan dukungan untuk Jenis data spasial SQL Server Geografi dan Geometri. Untuk informasi selengkapnya tentang API tipe data spasial dan cara menggunakannya, lihat Menggunakan jenis data spasial.
Implementasi untuk JDBC 4.3 yang diperkenalkan java.sql.Connection API beginRequest() dan endRequest()
Microsoft JDBC Driver 7.0 untuk SQL Server sekarang menerapkan beginRequest()
dan endRequest()
API dari java.sql.Connection
kelas . API ini diperkenalkan dengan spesifikasi JDBC 4.3 dan JDK 9. Untuk informasi selengkapnya tentang implementasi driver API ini, lihat kepatuhan JDBC 4.3 untuk Driver JDBC.
Dukungan untuk Penemuan dan Klasifikasi Data SQL
Microsoft JDBC Driver 7.0 untuk SQL Server menyediakan dukungan untuk Penemuan dan Klasifikasi Data SQL dengan database target apa pun yang mendukung fitur ini. Driver sekarang mengekspos SQLServerResultSet.getSensitivityClassification()
API untuk mengekstrak informasi ini dari yang diambil ResultSet
.
Untuk informasi selengkapnya tentang cara menggunakan fitur ini dengan Driver JDBC, lihat sampel di Penemuan dan Klasifikasi Data SQL.
Menambahkan properti koneksi: useBulkCopyForBatchInsert
Microsoft JDBC Driver 7.0 untuk SQL Server memperkenalkan properti koneksi baru, useBulkCopyForBatchInsert
. Properti ini hanya didukung untuk Azure Synapse Analytics.
Properti ini dinonaktifkan secara default. Anda dapat mengaktifkannya untuk meningkatkan performa aplikasi pengguna saat mendorong data dalam jumlah besar ke Azure Synapse Analytics. Mengaktifkan properti ini mengubah perilaku operasi penyisipan batch untuk beralih ke operasi penyalinan massal dengan data yang disediakan pengguna. Untuk informasi selengkapnya tentang properti ini dan batasannya, lihat Menggunakan API Salin Massal untuk operasi penyisipan batch.
Menambahkan properti koneksi: cancelQueryTimeout
Microsoft JDBC Driver 7.0 untuk SQL Server memperkenalkan properti koneksi baru, cancelQueryTimeout
, untuk membatalkan queryTimeout
objek dan java.sql.Statement
.java.sql.Connection
Menambahkan konstruktor Penyedia Azure Key Vault
Microsoft JDBC Driver 7.0 untuk SQL Server memperkenalkan kembali konstruktor yang dihapus sebelumnya, untuk SQLServerColumnEncryptionAzureKeyVaultProvider
. Ini memungkinkan autentikasi melalui metode kustom yang diterapkan SQLServerKeyVaultAuthenticationCallback
untuk mengambil token akses.
Konstruktor baru memiliki definisi berikut:
/* This constructor is added to provide backward compatibility with 6.0
* version of the driver. It is marked deprecated for removal in the next
* stable release.
*/
@Deprecated
public SQLServerColumnEncryptionAzureKeyVaultProvider(
SQLServerKeyVaultAuthenticationCallback authenticationCallback,
ExecutorService executorService) throws SQLServerException;
/*New constructor to replace the above constructor*/
public SQLServerColumnEncryptionAzureKeyVaultProvider(
SQLServerKeyVaultAuthenticationCallback authenticationCallback) throws SQLServerException;
Versi "Microsoft Azure Active Directory Authentication Library (ADAL4J) for Java" yang diperbarui: 1.6.0
Microsoft JDBC Driver 7.0 untuk SQL Server telah memperbarui dependensi Maven-nya pada "Microsoft Azure Active Directory Authentication Library (ADAL4J) untuk Java" ke versi 1.6.0. Untuk informasi selengkapnya tentang dependensi, lihat Dependensi fitur Driver Microsoft JDBC untuk SQL Server.
6.4
Unduh Microsoft JDBC Driver 6.4 untuk SQL Server (exe ekstraksi mandiri)
Unduh Microsoft JDBC Driver 6.4 untuk SQL Server (tar.gz)
Nomor versi: 6.4.0
Dirilis: 27 Februari 2018
Jika Anda perlu mengunduh driver dalam bahasa selain yang terdeteksi untuk Anda, Anda dapat menggunakan tautan langsung ini.
Untuk driver dalam file exe ekstraksi mandiri: Cina (Disederhanakan) | Cina (Tradisional) | Inggris (Amerika Serikat) | Prancis | Jerman | Italia | | | Jepang Portugis Korea (Brasil) | Spanyol Rusia |
Untuk driver dalam file tar.gz: Cina (Sederhana) | Cina (Tradisional) | Inggris (Amerika Serikat) | Prancis | Jerman | Italia | | Portugis Korea | (Brasil) | Spanyol Rusia |
Microsoft JDBC Driver 6.4 untuk SQL Server sepenuhnya sesuai dengan spesifikasi JDBC 4.1 dan 4.2. Jar dalam paket 6.4 dinamai sesuai dengan kompatibilitas versi Java. Misalnya, file mssql-jdbc-6.4.0.jre8.jar dari paket 6.4 harus digunakan dengan Java 8.
Dukungan untuk JDK 9
Driver ini mendukung JDK versi 9.0 selain JDK 8.0 dan 7.0.
Kepatuhan JDBC 4.3
Driver mendukung spesifikasi Java Database Connectivity API 4.3, selain 4.1 dan 4.2. Metode API JDBC 4.3 ditambahkan tetapi belum diimplementasikan. Untuk detailnya, lihat Kepatuhan JDBC 4.3 untuk Driver JDBC.
Menambahkan properti koneksi: sslProtocol
Properti koneksi baru memungkinkan pengguna menentukan kata kunci protokol TLS. Nilai yang mungkin adalah: "TLS", "TLSv1", "TLSv1.1", dan "TLSv1.2". Untuk detailnya, lihat SSLProtocol.
Properti koneksi yang tidak digunakan lagi: fipsProvider
Properti fipsProvider
koneksi dihapus dari daftar properti koneksi yang diterima. Untuk detailnya, lihat permintaan pull GitHub terkait.
Menambahkan properti koneksi untuk menentukan TrustManager kustom
Driver sekarang mendukung penentuan TrustManager kustom dengan properti koneksi dan trustManagerConstructorArg
tambahantrustManagerClass
. Anda dapat menentukan sekumpulan sertifikat yang dipercaya secara dinamis per koneksi tanpa memodifikasi pengaturan global untuk lingkungan komputer virtual Java (JVM).
Menambahkan dukungan untuk datetime/smallDatetime dalam parameter bernilai tabel
Driver sekarang mendukung jenis datetime
data dan smallDatetime
saat Anda menggunakan parameter bernilai tabel (TVP).
Menambahkan dukungan untuk jenis data sql_variant
Driver JDBC sekarang mendukung sql_variant
jenis data yang akan digunakan dengan SQL Server. Jenis sql_variant
data juga didukung dengan fitur seperti TVP dan salinan massal dengan batasan berikut:
Untuk nilai tanggal:
Saat Anda menggunakan TVP untuk mengisi tabel yang berisi
datetime
, ,smalldatetime
ataudate
nilai yangsql_variant
disimpan dalam kolom, memanggilgetDateTime()
metode , ,getSmallDateTime()
ataugetDate()
pada kumpulan hasil tidak berfungsi dan melemparkan pengecualian berikut:java java.lang.String cannot be cast to java.sql.Timestamp
Sebagai solusinya, gunakan metode atau
getObject()
sebagai gantinyagetString()
.Menggunakan TVP dengan sql_variant untuk nilai null:
Jika Anda menggunakan TVP untuk mengisi tabel dan mengirim nilai NULL ke
sql_variant
jenis kolom, Anda mengalami pengecualian. Menyisipkan nilai NULL dengan tipesql_variant
kolom di TVP saat ini tidak didukung.
Penembolokan metadata pernyataan yang disiapkan yang diimplementasikan
Driver JDBC telah menerapkan penembolokan metadata pernyataan yang disiapkan untuk peningkatan performa. Driver sekarang mendukung penembolokan metadata pernyataan yang disiapkan di driver dengan disableStatementPooling
properti koneksi dan statementPoolingCacheSize
. Fitur ini dinonaktifkan secara default. Untuk informasi selengkapnya, lihat Menyiapkan penembolokan metadata pernyataan untuk Driver JDBC.
Menambahkan dukungan untuk Autentikasi Terintegrasi Azure ACTIVE Directory di Linux/macOS
Driver JDBC sekarang mendukung Autentikasi Terintegrasi Azure Active Directory (Azure AD) pada semua sistem operasi yang didukung (Windows, Linux, dan macOS) dengan Kerberos. Atau, pada sistem operasi Windows, pengguna dapat mengautentikasi dengan mssql-jdbc_auth-version-arch<<>>.dll.
Versi "Microsoft Azure Active Directory Authentication Library (ADAL4J) for Java" yang diperbarui: 1.4.0
Driver JDBC telah memperbarui dependensi Maven-nya pada "Microsoft Azure Active Directory Authentication Library (ADAL4J) untuk Java" ke versi 1.4.0. Untuk informasi selengkapnya tentang dependensi, lihat Dependensi fitur Driver Microsoft JDBC untuk SQL Server.
6.2
Unduh Microsoft JDBC Driver 6.2 untuk SQL Server (exe ekstraksi mandiri)
Unduh Microsoft JDBC Driver 6.2 untuk SQL Server (tar.gz)
Nomor versi: 6.2.2
Dirilis: 29 September 2017
Jika Anda perlu mengunduh driver dalam bahasa selain yang terdeteksi untuk Anda, Anda dapat menggunakan tautan langsung ini.
Untuk driver dalam file exe ekstraksi mandiri: Cina (Disederhanakan) | Cina (Tradisional) | Inggris (Amerika Serikat) | Prancis | Jerman | Italia | | | Jepang Portugis Korea (Brasil) | Spanyol Rusia |
Untuk driver dalam file tar.gz: Cina (Sederhana) | Cina (Tradisional) | Inggris (Amerika Serikat) | Prancis | Jerman | Italia | | Portugis Korea | (Brasil) | Spanyol Rusia |
Microsoft JDBC Driver 6.2 untuk SQL Server sepenuhnya mematuhi spesifikasi JDBC 4.1 dan 4.2. Jar dalam paket 6.2 dinamai sesuai dengan kompatibilitas versi Java. Misalnya, file mssql-jdbc-6.2.2.jre8.jar dari paket 6.2 direkomendasikan untuk digunakan dengan Java 8.
6.2 Rilis
Nomor versi: 6.2.2
Dirilis: 3 Oktober 2017
Masalah yang diperbaiki:
- Memperbarui dependensi ADAL4J ke dependensi versi 1.2.0 dan Azure Key Vault ke versi 1.0.0
Nomor versi: 6.2.1
Dirilis: 14 Juli 2017
Masalah yang diperbaiki:
- Memperbaiki masalah saat menjalankan kueri tanpa parameter menggunakan
preparedStatement
Nomor versi: 6.2.0
Dirilis: 30 Juni 2017
Catatan
Masalah dengan peningkatan penembolokan metadata ditemukan di JDBC 6.2 RTW yang dirilis pada 29 Juni 2017. Peningkatan digulung balik dan jar baru (versi 6.2.1) dirilis pada 17 Juli 2017.
Peningkatan lain meningkatkan versi pustaka dependen Azure Key Vault ke 1.0.0, dan jar baru (versi 6.2.2) dirilis pada 19 Oktober 2017.
Unduh pembaruan terbaru untuk JDBC Driver 6.2 melalui tautan di atas, GitHub, atau Maven Central. Harap perbarui proyek Anda untuk menggunakan jar rilis 6.2.2. Untuk informasi selengkapnya, lihat catatan rilis untuk 6.2.1 dan 6.2.2.
Dukungan Azure ACTIVE Directory untuk Linux
Sambungkan aplikasi Linux Anda ke Azure SQL Database dengan menggunakan autentikasi Azure AD melalui nama pengguna/kata sandi dan metode token akses.
JVM berkemampuan FIPS
Driver JDBC sekarang dapat digunakan pada JVM yang berjalan dalam mode kepatuhan Federal Information Processing Standard (FIPS) 140 untuk memenuhi standar federal tentang kepatuhan.
Peningkatan autentikasi Kerberos
Driver JDBC sekarang memiliki dukungan untuk:
- Metode utama/kata sandi untuk aplikasi di mana konfigurasi Kerberos tidak dapat dimodifikasi atau tidak dapat mengambil token atau keytab baru. Metode ini dapat digunakan untuk mengautentikasi ke instans SQL Server yang hanya memungkinkan autentikasi Kerberos.
- Autentikasi lintas realm yang menggunakan Autentikasi Terintegrasi Kerberos tanpa secara eksplisit mengatur SPN server. Driver sekarang secara otomatis menghitung realm bahkan ketika tidak disediakan.
- Delegasi yang Dibatasi Kerberos dengan menerima kredensial pengguna yang ditiru sebagai objek kredensial GSS melalui sumber data. Kredensial yang ditiru ini kemudian digunakan untuk membuat koneksi Kerberos.
Menambahkan batas waktu
Driver JDBC sekarang mendukung batas waktu yang dapat dikonfigurasi berikut. Anda dapat mengubahnya berdasarkan kebutuhan aplikasi Anda.
- Batas waktu kueri untuk mengontrol jumlah detik untuk menunggu sebelum waktu habis terjadi saat Anda menjalankan kueri.
- Batas waktu soket untuk menentukan jumlah milidetik untuk menunggu sebelum batas waktu terjadi pada soket yang dibaca atau diterima.
6.1
Nomor versi: 6.1.0
Dirilis: 17 November 2016
Microsoft JDBC Driver 6.1 untuk SQL Server sepenuhnya sesuai dengan spesifikasi JDBC 4.1 dan 4.2. Ini adalah rilis sumber terbuka awal dari Driver JDBC. Kode sumber dapat ditemukan di tag GitHub v6.1.0. Ini membangun file mssql-jdbc-6.1.0.jre8.jar dan mssql-jdbc-6.1.0.jre7.jar, yang sesuai dengan kompatibilitas versi Java.
6.0
Unduh Microsoft JDBC Driver 6.0 untuk SQL Server (exe ekstraksi mandiri)
Unduh Microsoft JDBC Driver 6.0 untuk SQL Server (tar.gz)
Nomor versi: 6.0.8112
Dirilis: 17 Januari 2017
Jika Anda perlu mengunduh driver dalam bahasa selain yang terdeteksi untuk Anda, Anda dapat menggunakan tautan langsung ini.
Untuk driver dalam file exe ekstraksi mandiri: Cina (Disederhanakan) | Cina (Tradisional) | Inggris (Amerika Serikat) | Prancis | Jerman | Italia | | | Jepang Portugis Korea (Brasil) | Spanyol Rusia |
Untuk driver dalam file tar.gz: Cina (Sederhana) | Cina (Tradisional) | Inggris (Amerika Serikat) | Prancis | Jerman | Italia | | Portugis Korea | (Brasil) | Spanyol Rusia |
Microsoft JDBC Driver 6.0 untuk SQL Server sepenuhnya sesuai dengan spesifikasi JDBC 4.1 dan 4.2. Jar dalam paket 6.0 dinamai sesuai dengan kepatuhan mereka dengan versi JDBC API. Misalnya, file sqljdbc42.jar dari paket 6.0 sesuai dengan JDBC API 4.2. Demikian pula, file sqljdbc41.jar mematuhi JDBC API 4.1.
Untuk memastikan bahwa Anda memiliki file sqljdbc42.jar atau sqljdbc41.jar yang tepat, jalankan baris kode berikut. Jika outputnya adalah "Versi driver: 6.0.7507.100", Anda memiliki paket JDBC Driver 6.0.
Connection conn = DriverManager.getConnection("jdbc:sqlserver://<server>;encrypt=true;user=<user>;password=<password>;");
System.out.println("Driver version: " + conn.getMetaData().getDriverVersion());
Always Encrypted
Driver mendukung fitur Always Encrypted di SQL Server 2016. Fitur ini memastikan bahwa data sensitif tidak pernah terlihat dalam teks biasa dalam instans SQL Server. Always Encrypted bekerja dengan mengenkripsi data secara transparan dalam aplikasi, sehingga SQL Server hanya menangani data terenkripsi dan bukan nilai teks biasa. Bahkan jika instans SQL Server atau komputer host disusupi, semua penyerang bisa mendapatkan adalah ciphertext data sensitif. Untuk detailnya, lihat Menggunakan Always Encrypted dengan Driver JDBC.
Nama domain internasional
Driver mendukung nama domain internasional (IDN) untuk nama server. Untuk detailnya, lihat artikel "Menggunakan Nama Domain Internasional" di fitur Internasional Driver JDBC.
Kueri berparameter
Driver sekarang mendukung pengambilan metadata parameter dengan pernyataan yang disiapkan untuk kueri kompleks, seperti subkueri dan/atau gabungan. Peningkatan ini hanya tersedia saat Anda menggunakan SQL Server 2012 dan versi yang lebih baru.
Azure Active Directory
Autentikasi Azure ACTIVE Directory adalah mekanisme menyambungkan ke Azure SQL Database menggunakan identitas di Azure AD. Gunakan autentikasi Microsoft Azure AD untuk mengelola identitas pengguna database secara terpusat dan sebagai alternatif untuk autentikasi SQL Server.
Anda dapat menggunakan Driver JDBC 6.0 untuk menentukan kredensial Azure AD Anda di string koneksi JDBC untuk menyambungkan ke Azure SQL Database. Untuk detailnya, lihat properti autentikasi di artikel Mengatur properti koneksi.
Parameter bernilai tabel
TVP menyediakan cara mudah untuk melakukan marshal beberapa baris data dari aplikasi klien ke SQL Server tanpa memerlukan beberapa perjalanan pulang pergi atau logika sisi server khusus untuk memproses data. Anda dapat menggunakan TVP untuk merangkum baris data dalam aplikasi klien dan mengirim data ke server dalam satu perintah berparameter. Baris data masuk disimpan dalam variabel tabel yang kemudian dapat Anda operasikan dengan menggunakan Transact-SQL. Untuk detailnya, lihat Menggunakan parameter bernilai tabel.
Grup Ketersediaan Always On
Driver sekarang mendukung koneksi transparan ke Grup Ketersediaan AlwaysOn. Driver dengan cepat menemukan topologi AlwaysOn infrastruktur server Anda saat ini dan terhubung ke server aktif saat ini secara transparan.
4.2
Unduh Microsoft JDBC Driver 4.2 untuk SQL Server (exe ekstraksi mandiri)
Unduh Microsoft JDBC Driver 4.2 untuk SQL Server (tar.gz)
Nomor versi: 4.2.8112
Dirilis: 24 Agustus 2015
Jika Anda perlu mengunduh driver dalam bahasa selain yang terdeteksi untuk Anda, Anda dapat menggunakan tautan langsung ini.
Untuk driver dalam file exe ekstraksi mandiri: Cina (Disederhanakan) | Cina (Tradisional) | Inggris (Amerika Serikat) | Prancis | Jerman | Italia | | | Jepang Portugis Korea (Brasil) | Spanyol Rusia |
Untuk driver dalam file tar.gz: Cina (Sederhana) | Cina (Tradisional) | Inggris (Amerika Serikat) | Prancis | Jerman | Italia | | Portugis Korea | (Brasil) | Spanyol Rusia |
Microsoft JDBC Driver 4.2 untuk SQL Server sepenuhnya sesuai dengan spesifikasi JDBC 4.1 dan 4.2. Jar dalam paket 4.2 dinamai sesuai dengan kepatuhan mereka dengan versi JDBC API. Misalnya, file sqljdbc42.jar dari paket 4.2 sesuai dengan JDBC API 4.2. Demikian pula, file sqljdbc41.jar mematuhi JDBC API 4.1.
Untuk memastikan Anda memiliki file sqljdbc42.jar atau sqljdbc41.jar yang tepat, jalankan baris kode berikut. Jika outputnya adalah "Versi driver: 4.2.6420.100", Anda memiliki paket JDBC Driver 4.2.
Connection conn = DriverManager.getConnection("jdbc:sqlserver://<server>;encrypt=true;user=<user>;password=<password>;");
System.out.println("Driver version: " + conn.getMetaData().getDriverVersion());
Dukungan untuk JDK 8
Driver ini mendukung JDK versi 8.0 selain JDK 7.0, 6.0, dan 5.0.
Kepatuhan JDBC 4.1 dan 4.2
Driver mendukung spesifikasi Java Database Connectivity API 4.1 dan 4.2, selain 4.0. Untuk detailnya, lihat kepatuhan JDBC 4.1 untuk kepatuhan Driver JDBC dan JDBC 4.2 untuk Driver JDBC.
Salin massal
Anda menggunakan fitur salin massal untuk menyalin data dalam jumlah besar dengan cepat ke dalam tabel atau tampilan dalam database SQL Server. Untuk detailnya, lihat Menggunakan salinan massal dengan Driver JDBC.
Opsi putar kembali transaksi XA
Driver memiliki opsi batas waktu baru untuk pembatalan otomatis transaksi yang tidak siap yang ada. Untuk detailnya, lihat Memahami transaksi XA.
Properti koneksi utama Kerberos baru
Driver menggunakan properti koneksi baru untuk memfasilitasi fleksibilitas dengan koneksi Kerberos. Untuk detailnya, lihat Menggunakan Autentikasi Terintegrasi Kerberos untuk menyambungkan ke SQL Server.
4.1
Nomor versi: 4.1.8112
Dirilis: 12 Desember 2014
Dukungan untuk JDK 7
Driver mendukung JDK versi 7.0 selain JDK 6.0 dan 5.0.
Itanium tidak didukung untuk aplikasi Driver JDBC
Microsoft JDBC Driver untuk SQL Server tidak didukung di komputer Itanium.