Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Microsoft. Data.SqlClient viene pubblicato indipendentemente da .NET. Questo articolo riassume le caratteristiche significative, i cambiamenti comportamentali e i cambiamenti di compatibilità in ogni linea di rilascio. Le tabelle di rilascio includono ogni pubblicazione di pacchetti stabili, inclusi ogni hotfix e pacchetto non elencato. Per ogni aggiornamento di correzione e dipendenza, consulta le note complete di rilascio nel repository SqlClient.
Versioni correnti
| Linea di pubblicazione | Versione più recente | Data di rilascio | Support |
|---|---|---|---|
| 7.0 | 7.0.3 | Settembre 2026 | Supporto a Termine Standard (STS) |
| 6.1 | 6.1.7 | Settembre 2026 | Supporto a lungo termine (LTS) |
| Anteprima 7.1 | 7.1.0-anteprima 3.26238.4 | Agosto 2026 | Anteprima |
Non usare le versioni preview in produzione. Le API e il comportamento delle anteprime possono cambiare prima della disponibilità generale (GA).
Le tabelle delle release e i riassunti della disponibilità generale utilizzano il mese di pubblicazione NuGet. L'articolo sul ciclo di vita elenca le date di rilascio ufficiali, che possono variare. Per le finestre di supporto, vedi ciclo di vita del supporto driver SqlClient.
Anteprima 7.1
La linea di anteprima 7.1 estende batching, scoperta di schema, pool di connessione e API Always Critted. Le modifiche fino a 7.1.0-preview3 includono:
-
SqlBatchsupporto su .NET Framework. - Sovraccarichi asincroni
SqlConnection.GetSchemaAsync. - Alias di stringhe di connessione come
ColumnEncryption,ConnectTimeout,FailoverPartner,PacketSize, eWorkstationId. - Pseudo-colonne di grafo SQL per
$node_id,$edge_id,$from_id, e$to_idinSqlBulkCopy. - Applicazione del timeout della connessione idle opt-in.
- Una modalità timeout della connessione con opt-in che include il tempo trascorso in attesa di una connessione in pool.
- Ulteriore sviluppo del pool sperimentale di connessione basato su canali.
- Metodi asincroni sui provider di key store Always Critty. Il driver non chiama ancora questi metodi durante l'esecuzione dei comandi, quindi non rendono asincrone le operazioni Always Encrypted esistenti.
SqlBatchCommand.CommandBehavior è onorato a partire da questa linea. Le versioni precedenti ignoravano la proprietà. L'opzione di connessione obsoleta Type System Version=SQL Server 2000 ora genera un ArgumentException.
Preview3 modifica anche la validazione dei certificati e dell'enclave.
ServerCertificate confronta sempre il file di certificato configurato con il certificato presentato dal server. Un file invalido o illeggibile ora fallisce la connessione invece di tornare alla validazione del nome host. L'attestazione dell'enclave tramite Virtual Secure Mode (VSM) e Host Guardian Service (HGS) ora verifica che la chiave pubblica dell'enclave sia legata al rapporto di attestazione firmato. Riprova questi percorsi quando ti sposti da un'anteprima precedente.
Leggi le note di rilascio per preview1, preview2 e preview3 prima di testare questa linea.
7.0 STS
La versione 7.0 è stata disponibile in generale a marzo 2026. È l'attuale linea STS.
Caratteristiche e cambiamenti
- L'autenticazione Microsoft Entra fornita dal driver è passata dal pacchetto core a
Microsoft.Data.SqlClient.Extensions.Azure. Aggiungi il pacchetto di estensioni quando usi unaActive Directorymodalità di autenticazione. - Il pacchetto core non dipende più da
Azure.Core,Azure.Identity, o da Libreria di Autenticazione Microsoft (MSAL). -
SqlConnection.SspiContextProvidersupporta la negoziazione personalizzata di Kerberos e token NTLM. L'identità del provider fa parte della chiave del pool di connessione. - Il routing migliorato per Azure SQL Hyperscale e le repliche di lettura nominate sono negoziate automaticamente.
- Eventi diagnosticali di comandi, connessioni e transazioni fortemente tipati sono disponibili su .NET Framework e .NET attuale.
-
SqlConfigurableRetryFactory.BaselineTransientErrorsEspone la lista predefinita degli errori transitori del driver. -
Active Directory PasswordL'autenticazione è obsoleta. Utilizzare l'autenticazione interattiva per le applicazioni utente, l'autenticazione del principale servizio per i servizi o l'identità gestita per i carichi di lavoro ospitati su Azure. - Il supporto dei target inizia con .NET Framework 4.6.2 e .NET 8. Il driver supporta anche la compilazione e l'esecuzione su .NET 10.
Il multiplexing dei pacchetti per le letture asincrone rimane una funzionalità di anteprima ed è opt-in nella versione 7.0. Test compatibilità con i carichi di lavoro di produzione e mantengono un percorso di rollback.
Rilasci
| Versione | Rilascio | Cambiamenti rilevanti per il cliente |
|---|---|---|
| 7.0.0 | Marzo 2026 | Rilasciato per disponibilità generale. |
| 7.0.1 | Aprile 2026 | Sono state correte SqlBulkCopy le query di metadati per i pool SQL dedicati di SQL Server 2016 e Azure Synapse Analytics, corretto i metadati dei campi vettoriali, aggiunto la dipendenza mancante dal framework System.Data.Common .NET e aggiunta dell'inoltro di tipo per astrazioni di autenticazione. |
| 7.0.2 | Giugno 2026 | Allineò il driver core e i pacchetti companion, rinforzò il parsing dei token TDS, corresse la gestione della cache di verifica della firma Always Encrypted e corresse errori nella cancellazione, nel null-buffer GetBytes e GetChars nelle chiamate. |
| 7.0.3 | Settembre 2026 | Aggiornato SNI alla 6.0.3. Corretto una SqlBulkCopy regressione per gli accessi che non possono leggere sys.all_columns, una regressione dell'allocazione di memoria quando il tracciamento è disabilitato, ServerCertificate la validazione su SNI gestito, la verifica della chiave di attestazione Always Encrypted e un retry configurabile che registra un gestore di risoluzione assembly a livello di processo. |
Importante
A partire dalla 7.0.2, allineare i riferimenti diretti a Microsoft.Data.SqlClient, Microsoft.Data.SqlClient.Extensions.Azure, Microsoft.Data.SqlClient.Extensions.Abstractions, e Microsoft.Data.SqlClient.AlwaysEncrypted.AzureKeyVaultProvider. Risolviamo Microsoft.Data.SqlClient.Internal.Logging in modo transitivo. Su .NET Framework, le versioni assembly di Extensions.Azure, , e Internal.Logging sono cambiate da 1.0.0.0 a 7.0.0.0Extensions.Abstractions. Ricostruisci l'applicazione o aggiungi binding redirect quando aggiorni questi pacchetti.
6.1 LTS
La versione 6.1.0 è stata rilasciata a luglio 2025, ma successivamente è stata rimossa dalla lista a causa di regressioni critiche. La versione 6.1.1, rilasciata nell'agosto 2025, ha stabilito la linea supportata 6.1 LTS.
Caratteristiche e cambiamenti
- Trasporto vettoriale nativo SQL Server 2025 attraverso
SqlVector<T>, inizialmente per vettori in virgola mobile a precisione singola. - Un asset di riferimento .NET Standard 2.0 per la compatibilità delle librerie. Questo asset non è un'implementazione in tempo reale. Le applicazioni eseguibili devono utilizzare un asset runtime supportato per .NET Framework o .NET.
- La multiplexazione di pacchetti opt-in funziona per letture asincrone di grandi dimensioni e gestione degli endpoint per database SQL in Microsoft Fabric.
- Migliorato il supporto nativo per la compilazione Ahead-of-Time (AOT).
- Ridotto delle allocazioni nei percorsi di connessione e di elaborazione TDS.
- Le basi interne per l'estensibilità dell'interfaccia pubblica di supporto al supporto del fornitore di sicurezza (SSPI) sono state aggiunte nella versione 7.0.
Non distribuire la versione 6.1.0. La versione 6.1.1 ha ripristinato le modifiche di rilevamento e riproduzione dei pacchetti interessate.
Rilasci
| Versione | Rilascio | Cambiamenti rilevanti per il cliente |
|---|---|---|
| 6.1.0 | Luglio 2025 | Rilasciato per disponibilità generale. Questo pacchetto è stato non elencato a causa di regressioni critiche. Non usarlo. |
| 6.1.1 | Agosto 2025 | Annullati i cambiamenti di rilevamento, correzione e riproduzione parziale dei pacchetti dalla 6.1.0. Assemblaggi di riferimento vettoriali corretti e SqlVector<T>.Null. |
| 6.1.2 | Ottobre 2025 | Ha corretto l'inizializzazione precoce del contatori di prestazioni, la sostituzione di fornitori di autenticazione personalizzati e la concorrenza del pool che impedivano l'uso della dimensione massima del pool configurata. |
| 6.1.3 | Novembre 2025 | Aggiunto IgnoreServerProvidedFailoverPartner per i Gruppi di Disponibilità Base e le porte personalizzate. Ha fissato l'inizializzazione iniziale delle metriche EventSource. |
| 6.1.4 | Gennaio 2026 | Aggiunto EnableMultiSubnetFailoverByDefault. Fallimenti di batching corretti SqlDataAdapter e conteggi negativi di connessioni attive nelle metriche del pool. |
| 6.1.5 | Aprile 2026 | Rimossi i Service Principal Name (SPN) e il Domain Name System (DNS) non necessari funzionano per l'autenticazione non integrata, hanno reso ExecuteScalar la propagazione degli errori del server restituiti dopo i dati e hanno corretto i tipi di metadati vettoriali. |
| 6.1.6 | Giugno 2026 | Aggiunta la compatibilità opt-in per il broker Windows Web Account Manager (WAM), la parsing TDS di token più avanzata, la corretta correzione dei fallimenti della firma della chiave principale nelle colonne con cache e la validazione degli argomenti correttaGetChars. |
| 6.1.7 | Settembre 2026 | Aggiornato SNI alla 6.0.3. Validazione corretta ServerCertificate su SNI gestito, verifica della chiave di attestazione Always Encrypted dell'enclave, AccessTokenCallback comportamento di ritentazione della connessione e registrazione di un gestore di risoluzione assembly a livello di processo. |
Linee di uscita precedenti
Le seguenti linee di rilascio non sono più supportate. Usa i loro riepiloghi quando pianifichi un aggiornamento su più versioni di driver.
6.0
La versione 6.0 è stata disponibile a generale a gennaio 2025. La patch finale è stata la 6.0.5, rilasciata a gennaio 2026.
- Aggiunta la compatibilità nativa SQL Server JSON tramite
Microsoft.Data.SqlTypes.SqlJson, inclusi percorsi di lettura, scrittura, streaming e copia in massa. - Aggiunti payload diagnostici pubblici e fortemente tipati per gli eventi di comando, connessione e transazione.
- Aggiunto
OpenAsync(SqlConnectionOverrides, CancellationToken), inclusoOpenWithoutRetry. - Aggiunta
DateOnlyeTimeOnlysupporto eDataTableSqlDataRecordparametri strutturati. - Aggiunta la compatibilità .NET 9.
- Eliminato .NET Standard e .NET 6 asset runtime. I target supportati divennero .NET Framework 4.6.2 e versioni successive e .NET 8 e versioni successive.
- Limitato
EnableOptimizedParameterBindingai comandi testuali.
Rilasci
| Versione | Rilascio | Cambiamenti rilevanti per il cliente |
|---|---|---|
| 6.0.0 | Gennaio 2025 | Rilasciato per disponibilità generale. Questo pacchetto non è elencato su NuGet, e le note a monte non documentano una ragione. |
| 6.0.1 | Gennaio 2025 | API di riferimento corrette SqlClientDiagnostic , avvisi TLS down-level e dipendenze. |
| 6.0.2 | Aprile 2025 | Corretti possibili fallimenti nulli socket-ricevimento, SqlJson API di riferimento, parametri di output JSON e dipendenze. |
| 6.0.3 | Ottobre 2025 | Ha impedito la sostituzione di fornitori di autenticazione personalizzata e la concorrenza dei pool che non utilizzava Max Pool Size. |
| 6.0.4 | Novembre 2025 | Aggiunto Switch.Microsoft.Data.SqlClient.IgnoreServerProvidedFailoverPartner per i Gruppi di Disponibilità Base che utilizzano porte TCP personalizzate. |
| 6.0.5 | Gennaio 2026 | Corretto SqlDataAdapter il batch RPC null processing, aggiunto Switch.Microsoft.Data.SqlClient.EnableMultiSubnetFailoverByDefault, e aggiornato le dipendenze. |
5,2
La versione 5.2 è arrivata in disponibilità generale a febbraio 2024. La patch finale è stata la 5.2.3, rilasciata nell'aprile 2025.
- Aggiunto
SqlConnection.AccessTokenCallbackper l'acquisizione asincrona e compatibile con il pool. - Aggiunto
SqlBatcheSqlBatchCommandattivo .NET 6 e versioni successive. - Aggiunta
SqlDiagnosticListenerla compatibilità con .NET Standard. - Aggiunto 64 bit
SqlBulkCopy.RowsCopied64. La proprietà più vecchiaRowsCopiedrimane un intero a 32 bit. - Autenticazione aggiunta
Active Directory Workload Identity. - Aggiunta la compatibilità per .NET 8 e piattaforme big-endian.
- Cambiato
UseOneSecFloorInTimeoutCalculationDuringLoginper predefinito intrue. - Utilizzato
NegotiateAuthenticationper SSPI gestito su .NET 7 e versioni successive.
Rilasci
| Versione | Rilascio | Cambiamenti rilevanti per il cliente |
|---|---|---|
| 5.2.0 | Febbraio 2024 | Rilasciato per disponibilità generale. |
| 5.2.1 | Maggio 2024 | Correzione delle connessioni Linux a istanze nominate con porte, FireInfoMessageEventOnUserErrors, datatimeoffset(n) parametri a valori di tabella, ritardato OpenAsync, e AccessTokenCallback preservazione da SqlConnection.Clone(). |
| 5.2.2 | Agosto 2024 | Timeout fissi dei token, connessioni SNI socket gestite, assembly targeting, ripristini SSPI, letture di tipo definite dall'utente e dati dei lettori criptati. Pacchetti di identità aggiornati per CVE-2024-35255. |
| 5.2.3 | Aprile 2025 | Correvano possibili guasti di ricezione nulla socket e incoerenze nell'assemblaggio di riferimento, consentivano numeri di errore transitori negativi e aggiornavano le dipendenze. |
5.1
La versione 5.1 è stata disponibile in generale a gennaio 2023. L'ultima patch è stata la 5.1.9, rilasciata a gennaio 2026.
- Aggiunta la compatibilità per .NET 6 e eliminato .NET Core 3.1.
- Aggiunta
DateOnlyeTimeOnlysupporto per i valori dei parametri eGetFieldValue. - Aggiunto TLS 1.3 in .NET e percorsi nativi SQL Server Network Interface (SNI).
- Aggiunto
ServerCertificateper una corrispondenza esatta del certificato conEncrypt=MandatoryeEncrypt=Strict. - Aggiunta la compatibilità Windows ARM64 per .NET Framework.
- Ho reso pubblico il
SqlConnectionEncryptOptionparser delle stringhe. - La versione 5.1.3 ha corretto il percorso di declassamento di crittografia CVE-2024-0056 e la validazione della catena dei certificati.
Rilasci
| Versione | Rilascio | Cambiamenti rilevanti per il cliente |
|---|---|---|
| 5.1.0 | Gennaio 2023 | Rilasciato per disponibilità generale. |
| 5.1.1 | Marzo 2023 | Correzione della segnalazione degli errori Always Critty, transazioni in modalità rediretto, throttling dei token, fallimenti TDS RPC di grande query e GetBytesAsync gestione del null. |
| 5.1.2 | Ottobre 2023 | Correzione delle istanze utente SQL Express, tentazioni di enclave, LocalDB, valori di costruzione di stringhe di connessione, SqlConnectionEncryptOption conversione di configurazione e OpenAsync errori transitori. |
| 5.1.3 | Gennaio 2024 | Corretto CVE-2024-0056 e validazione della catena di certificati. |
| 5.1.4 | Gennaio 2024 | Corretto un deadlock tra transazioni distribuite .NET e aggiornato Azure.Identity per CVE-2023-36414. |
| 5.1.5 | Gennaio 2024 | Pulizia delle transazioni corretta prima del pooling e fallimenti di conversione di data e ora sempre criptata. Dipendenze aggiornate di IdentityModel per CVE-2024-21319. |
| 5.1.6 | Agosto 2024 | Fallimenti di dati pendenti con lettori criptati e corretti OpenAsync, timeout e timeout di autenticazione. Aggiornate le dipendenze di identità per CVE-2024-35255 e istanze memorizzate TokenCredential nella cache. |
| 5.1.7 | Aprile 2025 | Corretto un possibile fallimento nullo socket-ricevimento, allineato gli assemblaggi sorgente e riferimento e aggiornato le dipendenze. |
| 5.1.8 | Novembre 2025 | Aggiunta Switch.Microsoft.Data.SqlClient.IgnoreServerProvidedFailoverPartnere corretta la gestione dei marchi d'ordine UTF-8 in copia di massa, modernizzazione della creazione MSAL e aggiornata delle dipendenze. |
| 5.1.9 | Gennaio 2026 | Ho spostato SqlStatistics il timing e Environment.TickCount aggiornato le dipendenze specifiche del framework. |
5,0
La versione 5.0 è stata disponibile in generale nell'agosto 2022. L'ultima patch è stata la 5.0.2, rilasciata a marzo 2023.
- Aggiunto TDS 8.0 fino a
Encrypt=Strict. La modalità Strict avvia TLS prima dello scambio di login TDS e valida sempre il certificato server. - Cambiato
SqlConnectionStringBuilder.EncryptdaboolaSqlConnectionEncryptOption. - Ho spostato i tipi di runtime del common language (CLR) di SQL Server nel pacchetto con versioni
Microsoft.SqlServer.Serverseparate. - Opzioni aggiunte
Server SPNeFailover Server SPNdi connessione. - Aggiunto Windows SQL Server supporto agli alias su .NET attuali.
- Aggiunto
SqlDataSourceEnumeratorsu Windows. - Ho abbandonato il framework .NET 4.6.1.
Importante
Il SqlConnectionStringBuilder.Encrypt cambiamento di tipo è una rottura binaria. I tipi rimossi da Microsoft.Data.SqlClient.Server richiedono anche modifiche alla sorgente per poter usare Microsoft.SqlServer.Server. Ricompila applicazioni e librerie, aggiorna i namespace e verifica eventuali conflitti di namespace quando System.Data.SqlClient rimane riferito.
Rilasci
| Versione | Rilascio | Cambiamenti rilevanti per il cliente |
|---|---|---|
| 5.0.0 | Agosto 2022 | Rilasciato per disponibilità generale. |
| 5.0.1 | Ottobre 2022 | Ripristinato HostNameInCertificate su .NET Framework e risolto blocchi di attenzione, SqlConnectionStringBuilder.Encryptregistrazione cancellazione, blocchi SNI gestiti, collazione UTF-8 e crash SNI nel dominio applicativo. |
| 5.0.2 | Marzo 2023 | Corretto una perdita di memoria asincrona, modalità TransactionScoperediretto, errori Always Critty, fallimenti RPC TDS di grande query e deadlock tra transazioni distribuite. |
4.1
La versione 4.1 è stata disponibile a generale a gennaio 2022. L'ultima patch è stata la 4.1.1, rilasciata a settembre 2022.
- Aggiunto
Attestation Protocol=Noneper enclave di Virtualizzazione basata sulla Sicurezza (VBS). - Richieste parallelizzate del protocollo di risoluzione SQL Server su Linux e macOS quando
MultiSubnetFailoverè abilitato. - Controlli fissi della lista di revoca dei certificati durante l'autenticazione.
- Corretto l'autenticazione Microsoft Entra, i valori di null
SqlBinarye rowversion, e il comportamento di collazione UTF-8.
Rilasci
| Versione | Rilascio | Cambiamenti rilevanti per il cliente |
|---|---|---|
| 4.1.0 | Gennaio 2022 | Rilasciato per disponibilità generale. |
| 4.1.1 | Settembre 2022 | Correzione di fallimenti nella lista di revoca dei certificati, richieste parallele del SQL Server Resolution Protocol per MultiSubnetFailover, e corretta l'autenticazione Microsoft Entra, la versione di righe, UTF-8 e il dominio applicativo SNI. |
4.0
La versione 4.0 è arrivata a disponibilità generale nel novembre 2021. La patch finale è stata la 4.0.6, rilasciata nell'agosto 2024.
- Cambiato il valore predefinito di
Encryptdafalseatrue. - Aggiunto
SqlCommand.EnableOptimizedParameterBindingper comandi con molti parametri. - Aggiunto
SqlFileStreamper Windows tramite l'implementazione dello standard .NET. - Aggiunta la compatibilità di istanze LocalDB nella gestione SNI.
- Aggiunto
GetFieldValue<T>eGetFieldValueAsync<T>perXmlReader,TextReader, eStream. - Ho rimosso l'interruttore di sicurezza dalla logica di ritentazione configurabile. Retry rimaneva disabilitato finché un'applicazione non configurava un provider.
- Ho cambiato i fallimenti dell'autenticazione Microsoft Entra in throw
SqlExceptioninvece diAggregateException. - Ho abbandonato .NET Core 2.1.
- La versione 4.0.5 ha corretto il percorso di downgrade di crittografia CVE-2024-0056 e la validazione della catena dei certificati.
Importante
Poiché la crittografia è predefinita true nella versione 4.0 e successive, un aggiornamento può esporre disaccordi di fiducia nei certificati o nei nomi del server. Non disabilitare la crittografia per aggirare questi errori. Installa un certificato server affidabile o configura la validazione del certificato per il deployment.
Rilasci
| Versione | Rilascio | Cambiamenti rilevanti per il cliente |
|---|---|---|
| 4.0.0 | Novembre 2021 | Rilasciato per disponibilità generale. |
| 4.0.1 | Gennaio 2022 | Aggiunto SuppressInsecureTLSWarning e corretto il Kerberos .NET 6, nomi dei pipe LocalDB e query di enclave concorrenti. |
| 4.0.2 | Settembre 2022 | Correzione di fallimenti nella lista di revoca dei certificati, richieste parallele del SQL Server Resolution Protocol per MultiSubnetFailover, e corretta l'autenticazione Microsoft Entra, la versione di righe, UTF-8 e il dominio applicativo SNI. |
| 4.0.3 | Aprile 2023 | Riduzione del throttling dei token per account cache e correzione dei fallimenti TDS RPC di grande interruzione. |
| 4.0.4 | Ottobre 2023 | Correzione dei tenti asincroni dell'enclave, fallback di LocalDB e SNI gestiti, versioni dei file e correlazione tra l'attività di connessione. |
| 4.0.5 | Gennaio 2024 | Corretto CVE-2024-0056 e validazione della catena di certificati. |
| 4.0.6 | Agosto 2024 | Pulizia degli eventi transazioni fisse prima del pooling e ActiveDirectoryAuthenticationProvider.AcquireTokenAsync gestione del timeout. |
3.1
La versione 3.1 è stata disponibile in generale a marzo 2022. L'ultima patch è stata la 3.1.7, rilasciata nell'agosto 2024.
- Aggiunto
Attestation Protocol=Noneper gli enclave VBS. - Sono stati aggiunti gli errori SQL 42108 e 42109 all'elenco predefinito degli errori transitori.
- Aggiunta la compatibilità Windows ARM64 per .NET Framework nella versione 3.1.2.
- Ridotta le richieste ripetute di token Microsoft Entra tramite acquisizione silenziosa di token nella versione 3.1.3.
- Corretto il percorso di downgrade di crittografia CVE-2024-0056 nella 3.1.5.
- Pulizia delle transazioni corretta prima del pooling e gestione del timeout dei token Microsoft Entra nella versione 3.1.7.
Rilasci
| Versione | Rilascio | Cambiamenti rilevanti per il cliente |
|---|---|---|
| 3.1.0 | Marzo 2022 | Rilasciato per disponibilità generale. |
| 3.1.1 | Agosto 2022 | Valori di versione nulla SqlBinary corretti, fallimenti di Kerberos in .NET 6 e fallimenti di riferimento nullo nell'autenticazione Microsoft Entra. |
| 3.1.2 | Febbraio 2023 | Aggiunta del supporto .NET Framework per Windows ARM64 e correzione della sicurezza dei thread con lista di ritenti, blocchi di transazioni distribuite, collazione UTF-8 e validazione delle procedure memorizzate. |
| 3.1.3 | Marzo 2023 | Riduzione del throttling dei token Microsoft Entra e AcquireTokenSilent correzione dei fallimenti TDS RPC di grande intervista. |
| 3.1.4 | Ottobre 2023 | Correzione dei tenti asincroni dell'enclave, fallback LocalDB e SNI gestiti, versioni dei file, correlazione dell'attività di connessione e formattazione EventSource. |
| 3.1.5 | Gennaio 2024 | Corretto CVE-2024-0056 e validazione della catena di certificati. |
| 3.1.6 | Agosto 2024 | Questo pacco non era firmato correttamente ed era non elencato. Non esiste alcun file di note di rilascio a monte. Usa invece la 3.1.7. |
| 3.1.7 | Agosto 2024 | Pulizia degli eventi di transazione fissa prima del pooling, timeout di autenticazione, firma assembly e crash SNI del dominio applicativo. |
3.0
La versione 3.0 è stata disponibile in generale a giugno 2021. L'ultima patch è stata la 3.0.1, rilasciata a settembre 2021.
- Aggiunta una logica di ritentazione configurabile per le operazioni di connessione e comando. Nella 3.0, rimaneva opt-in dietro
Switch.Microsoft.Data.SqlClient.EnableRetryLogica . - Aggiunti EventCounter per l'attività di connessione e pool.
- Aggiunta
Active Directory Defaultl'autenticazione tramiteAzure.Identity. - Aggiunta la registrazione del provider di archiviazione chiave Always Encrypted con ambito connessione e comando.
- Aggiunta la preferenza per l'indirizzo IP TCP.
- Modificato l'autenticazione dell'identità gestita assegnata dall'utente per usare l'ID client invece dell'ID oggetto in
User Id. - Ho cambiato i valori null delle versioni di riga SQL per restituirli
DBNullinvece di un array di byte vuoto. Un commutatore AppContext ha mantenuto il comportamento più vecchio. - Ho aumentato l'obiettivo minimo del framework .NET da 4.6 a 4.6.1.
I provider di archiviazione chiave di sistema hanno la precedenza sui fornitori registrati su una connessione o comando a partire dalla versione 3.0. Rinomina un provider personalizzato se il suo nome è in conflitto con quello di un provider integrato.
Rilasci
| Versione | Rilascio | Cambiamenti rilevanti per il cliente |
|---|---|---|
| 3.0.0 | Giugno 2021 | Rilasciato per disponibilità generale. |
| 3.0.1 | Settembre 2021 | Correzione del blocco delle aperture di connessione Microsoft Entra, stato di promozione della transazione, crittografia obbligatoria, ricorsioni e blocchi di ritento, e connessioni inutilizzabili. |
2.1
La versione 2.1 è raggiunta la disponibilità generale nel novembre 2020. L'ultima patch è stata la 2.1.7, rilasciata a gennaio 2024.
- Esteso Always Crittografato alle piattaforme .NET Standard 2.0 supportate.
- Aggiunta del supporto per enclave sicuro su Unix per .NET Core e su tutte le piattaforme .NET Standard 2.1.
- Aggiunta
Active Directory Device Code Flowe gestita l'autenticazione dell'identità. - Aggiunti hook di personalizzazione per l'autenticazione interattiva e del codice del dispositivo.
- Metadati di classificazione di sensibilità aggiunti.
- Aggiunto
SqlConnection.ServerProcessId. - Aggiunta l'opzione
Command Timeoutconnessione come predefinito per i comandi creati da una connessione. - La versione 2.1.7 ha corretto il percorso di downgrade di crittografia CVE-2024-0056.
Rilasci
| Versione | Rilascio | Cambiamenti rilevanti per il cliente |
|---|---|---|
| 2.1.0 | Novembre 2020 | Rilasciato per disponibilità generale. |
| 2.1.1 | Dicembre 2020 | Fisso dell'identità gestita assegnata al sistema in Funzioni di Azure, Unix Kerberos e TCP keep-alive. |
| 2.1.2 | Marzo 2021 | Istanze Unix con nomi corretti, timeout risultati errati (timeout), elaborazione DTD non sicura, SPN Kerberos, dipendenze di cache mancanti, tracciamento e header MARS. |
| 2.1.3 | Maggio 2021 | Prevenuto la corruzione dei dati delle transazioni con set di risultati aperti e correzione fissa e SinglePhaseCommitTransactionEnded una corsa. |
| 2.1.4 | Settembre 2021 | Assicurato che le connessioni falliscano quando è richiesta la crittografia e le connessioni fisse che diventino inutilizzabili. |
| 2.1.5 | Agosto 2022 | Aggiunta la validazione della lunghezza delle procedure CommandText memorizzate e l'autenticazione Kerberos di .NET 6 e SqlTypeWorkarounds. |
| 2.1.6 | Aprile 2023 | Correzione di fallimenti TDS RPC di grande query in SqlCommand.ExecuteReaderAsync, conflitti di collazione predefiniti UTF-8 e deadlock di invio di attenzione. |
| 2.1.7 | Gennaio 2024 | Corretto CVE-2024-0056 e validazione della catena di certificati. |
2.0
La versione 2.0 è stata disponibile a giugno 2020. La patch finale è stata la 2.0.1, rilasciata nell'agosto 2020.
- Aggiunta
Active Directory IntegratedeActive Directory Interactiveautenticazione su .NET Core e .NET Standard. - Autenticazione aggiunta
Active Directory Service Principal. - Aggiunta
Microsoft.Data.SqlClient.EventSourcela tracciatura. - Aggiunta la modalità TCP cross-platform keep-alive e un'implementazione di rete gestita opt-in su Windows per test e debug. Il percorso gestito non supportava l'autenticazione di Windows non a dominio.
- Ho aggiunto
SqlBulkCopy.RowsCopiede ordinato suggerimenti in copia in massa. - Aggiunto
SqlConnection.Open(SqlConnectionOverrides.OpenWithoutRetry). - Aggiunta la supporto Windows ARM tramite la
Microsoft.Data.SqlClient.SNI.runtimedipendenza. - Ha iniziato a validare il certificato server quando un server forza la cifratura, incluso quando la stringa di connessione imposta
Encrypt=false. Le connessioni possono fallire dopo questo aggiornamento se il certificato non è affidabile o il suo nome non corrisponde al server. - Ho cambiato la gestione della scala dei parametri decimali per usare un arrotondamento compatibile con SQL Server.
Rilasci
| Versione | Rilascio | Cambiamenti rilevanti per il cliente |
|---|---|---|
| 2.0.0 | Giugno 2020 | Rilasciato per disponibilità generale. |
| 2.0.1 | Agosto 2020 | Aggiunta configurazione di autenticazione compatibile con la coesistenza e correzione di scadenza dei token pooled, gestione dei falli transitori, cache dell'enclave e errori nativi di prelogin SNI. |
1.1
La versione 1.1 è stata disponibile in generale nel novembre 2019. L'ultima patch è stata la 1.1.4, rilasciata a marzo 2021.
- Aggiunto Always Encrypted con enclave sicure su target supportati per il framework .NET e il core .NET.
- Aggiunta
|DataDirectory|l'espansioneAttachDBFilenamesu .NET Core. - Letture asincrone migliorate con cache multipacket target-buffer.
- Riduzione del sovraccarico degli snapshot in
TdsParserStateObjecteSqlDataReader. - Errori di header state di timeout e Multiple Active Result Sets (MARS) corretti nelle patch successive.
Rilasci
| Versione | Rilascio | Cambiamenti rilevanti per il cliente |
|---|---|---|
| 1.1.0 | Novembre 2019 | Rilasciato per disponibilità generale. |
| 1.1.1 | Febbraio 2020 | Annullati i cambiamenti asincroni SNIPacket che causavano blocchi e corretto l'intervallo di dipendenza SNI. |
| 1.1.2 | Aprile 2020 | Sono stati aggiunti nomi utente per l'autenticazione interattiva Active Directory e la persistenza fissa della password e le intestazioni TDS MARS. |
| 1.1.3 | maggio 2020 | Ha impedito che le transazioni abortite impiegassero connessioni aggregate e ha ripristinato la correzione regressiva dell'header MARS. |
| 1.1.4 | Marzo 2021 | Risultati corretti dello stato di timeout errata e errori di header MARS su .NET Framework 4.8 e versioni successive. |
1.0
Microsoft. Data.SqlClient 1.0 ha raggiunto la disponibilità generale nell'agosto 2019. L'ultima patch è stata la 1.0.19269.1, rilasciata a settembre 2019.
- Ho introdotto il fornitore spedito
Microsoft.Data.SqlClientseparatamente. - Supportava .NET Framework 4.6 e versioni successive, .NET Core 2.1 e versioni successive, e .NET Standard 2.0.
- Aggiunta
Active Directory Interactivel'autenticazione su .NET Framework. - Aggiunta
Active Directory Passwordl'autenticazione su .NET Core. - Aggiunta di metadati di classificazione della sensibilità dei dati su
SqlDataReader. - Aggiunta la collation SQL Server 2019 UTF-8.
- Aggiunta la compatibilità Always Critt su .NET Core.
Rilasci
| Versione | Rilascio | Cambiamenti rilevanti per il cliente |
|---|---|---|
| 1.0.19239.1 | Agosto 2019 | Rilasciato per disponibilità generale. Riutilizzo fisso della connessione dopo fallimenti di transazioni, pubblicazione SNI, gestione invariante alla globalizzazione e allargamento del nullo copia in massa. |
| 1.0.19249.1 | Settembre 2019 | Correzione delle letture di dati multipacchetto grandi su Unix. |
| 1.0.19269.1 | Settembre 2019 | Ripristinato SqlCommand.StatementCompleted, aggiunto il mancante SqlConnectionStringBuilder.Authentication, e annullato una modifica API incompatibile SqlAuthenticationParameters.Resource . |
Per un'applicazione che passa dal provider più vecchio, usa Migrate from System.Data.SqlClient a Microsoft. Data.SqlClient invece di leggere solo le note di rilascio.
Note opzionali sul rilascio del pacchetto
I pacchetti opzionali hanno le proprie note di rilascio. A partire dalla versione 7.0.2, vengono distribuiti in versione allineata con il driver core.
| Package | Note di rilascio |
|---|---|
Microsoft.Data.SqlClient.Extensions.Azure |
Note di rilascio dell'estensione Azure |
Microsoft.Data.SqlClient.Extensions.Abstractions |
Note di rilascio delle astrazioni delle estensioni |
Microsoft.Data.SqlClient.AlwaysEncrypted.AzureKeyVaultProvider |
Note di rilascio di Azure Key Vault Provider |
Non fare riferimento Microsoft.Data.SqlClient.Internal.Logging diretto. È una dipendenza interna condivisa dai pacchetti driver.
Valuta un aggiornamento
- Identifica ogni driver e ogni versione opzionale del pacchetto utilizzata direttamente o in modo transitivo.
- Leggi le note di rilascio di ogni versione minore e maggiore intercalata dall'aggiornamento.
- Controlla il ciclo di vita del supporto driver SqlClient per la compatibilità del framework target e del database.
- Aggiorna tutti i pacchetti correlati alle versioni compatibili.
- Compila e testa l'autenticazione, la crittografia, il pooling di connessioni, i parametri, le transazioni, i tentativi, la diagnostica e l'output di distribuzione dell'applicazione.
Per i comandi di installazione e deployment, vedi Installa, aggiorna e distribuisce Microsoft. Data.SqlClient.