Funzionalità di Microsoft ODBC Driver for SQL Server in Windows

Scaricare il driver ODBC

Microsoft ODBC Driver 18.0 for SQL Server in Windows

ODBC Driver 18.0 consente agli utenti di inviare tipi di dati long come tipi di dati max usando la parola chiave LongAsMax per attivare o disattivare l'impostazione. Quando l'impostazione è abilitata, i tipi SQL SQL_LONGVARCHAR, SQL_LONGVARBINARY e SQL_LONGWVARCHAR vengono inviati come varchar(max), varbinary(max) e nvarchar(max) invece di text, image e ntext, rispettivamente.

Le impostazioni predefinite di crittografia della connessione sono cambiate. Il valore predefinito dell'opzione Crittografa è ora Sì e le nuove parole chiave Facoltativa e Obbligatoria sono state introdotte rispettivamente come sinonimi per No e Sì. Per la connessione tramite il protocollo TDS 8.0, è stata aggiunta la modalità Strict (Encrypt=Strict). In questa modalità il certificato del server viene sempre verificato (l'opzione TrustServerCertificate viene ignorata). È possibile usare una nuova parola chiave, HostnameInCertificate, per specificare il nome host previsto nel certificato se è diverso dal server specificato. È possibile usare HostnameInCertificate con tutte le modalità di crittografia e la parola chiave è applicabile anche se l'opzione Force Encryption lato server è abilitata. In questo caso, il driver verifica il certificato in modalità facoltativa o obbligatoria, a meno che l'opzione non sia disabilitata tramite TrustServerCertificate.

ODBC Driver 18 include le estensioni SQLGetData. Se l'opzione è abilitata, è possibile usare SQLGetData per recuperare i dati delle colonne in qualsiasi ordine all'interno di una riga, anche a ritroso. Questa funzionalità viene fornita a scopo di compatibilità e comporta un calo notevole delle prestazioni e un aumento dell'utilizzo della memoria. È consigliabile che l'applicazione acceda sempre alle colonne in ordine crescente. Per abilitare le estensioni SQLGetData, è possibile usare l'attributo della stringa di connessione GetDataExtensions oppure la funzione SQLSetConnectAttr per impostare SQL_COPT_SS_GETDATA_EXTENSIONS su SQL_EN_ON.

Il supporto per Windows ARM64 è incluso a partire dal driver ODBC 18.2 e attualmente è un'anteprima. Il driver ARM64 è solo per applicazioni ARM64 a 64 bit e non include driver di emulazione ARM a 32 bit o x86/amd64.

Microsoft ODBC Driver 17.4 for SQL Server in Windows

ODBC Driver 17.4 include la possibilità di modificare le impostazioni keep-alive TCP. È possibile modificare le impostazioni aggiungendo valori alle chiavi del Registro di sistema del driver o del DSN. Le chiavi si trovano in HKEY_LOCAL_MACHINE\Software\ODBC\ per le origini dati di sistema e in HKEY_CURRENT_USER\Software\ODBC\ per le origini dati utente. Per il DSN è necessario aggiungere i valori in ...\Software\ODBC\ODBC.INI\<DSN Name> e per il driver in ...\Software\ODBC\ODBCINST.INI\ODBC Driver 17 for SQL Server.

Per altre informazioni, vedere Voci del Registro di sistema per i componenti ODBC.

I valori sono REG_SZ e sono i seguenti:

  • KeepAlive determina la frequenza dei tentativi effettuati da TCP per verificare l'integrità di una connessione inattiva inviando un pacchetto keep-alive. Il valore predefinito è 30 secondi.

  • KeepAliveInterval determina l'intervallo tra le ritrasmissioni keep-alive finché non viene ricevuta una risposta. Il valore predefinito è 1 secondo.

Microsoft ODBC Driver 13.1 for SQL Server in Windows

ODBC Driver 13.1 for SQL Server include tutte le funzionalità della versione precedente (11). Aggiunge inoltre il supporto per Always Encrypted e per l'autenticazione con Microsoft Entra ID (in precedenza Azure Active Directory).

Always Encrypted consente ai client di eseguire la crittografia dei dati sensibili all'interno delle applicazioni client e non rivelare le chiavi di crittografia di SQL Server. Un driver abilitato per Always Encrypted installato nel computer client offre questo livello di sicurezza crittografando e decrittografando automaticamente i dati sensibili nell'applicazione client SQL Server. Il driver crittografa i dati nelle colonne sensibili prima di passarli a SQL Server. Riscrive inoltre automaticamente le query in modo da mantenere la semantica per l'applicazione. Analogamente, il driver esegue in modo trasparente la decrittografia dei dati archiviati in colonne crittografate del database contenute nei risultati della query. Per altre informazioni, vedere Using Always Encrypted with the Windows ODBC Driver (Uso di Always Encrypted with the con il driver ODBC di Windows).

Microsoft Entra ID permette agli utenti, agli amministratori di database e ai programmatori di applicazioni di usare l'autenticazione Microsoft Entra. Per altre informazioni, vedere Uso di Microsoft Entra ID con il driver ODBC e Connessione al database SQL di Azure o ad Azure Synapse Analytics tramite l'autenticazione di Microsoft Entra.

Microsoft ODBC Driver 11 for SQL Server in Windows

ODBC Driver for SQL Server contiene tutte le funzionalità del driver ODBC di SQL Server Native Client disponibile in SQL Server 2012 (11.x). Per altre informazioni su SQL Server Native Client, vedere Programmazione in SQL Server Native Client. Il driver ODBC di SQL Server Native Client è basato sul driver ODBC fornito con il sistema operativo Windows. Per altre informazioni sul driver, vedere Windows Data Access Components SDK.

Questa versione di ODBC Driver for SQL Server contiene le nuove funzionalità seguenti:

opzione -l di bcp.exe per la specifica del timeout di accesso

L'opzione -l specifica il numero di secondi che devono trascorrere prima che si verifichi il timeout di un accesso di bcp.exe a SQL Server quando si cerca di stabilire la connessione a un server. Il timeout di accesso predefinito è di 15 secondi. Il valore del timeout deve essere un numero compreso tra 0 e 65534. Se il valore specificato non è numerico o non è compreso in tale intervallo, bcp.exe genera un messaggio di errore. Il valore 0 specifica un timeout infinito. Un timeout di accesso inferiore a (circa) 10 secondi non è affidabile.

Pool di connessioni compatibile con il driver

ODBC Driver for SQL Server supporta il supporta il pool di connessioni compatibile con il driver. Per altre informazioni, vedere Pool di connessioni compatibile con il driver nel driver ODBC per SQL Server | Microsoft Docs.

Esecuzione asincrona (metodo di notifica)

ODBC Driver for SQL Server supporta l'esecuzione asincrona (metodo di notifica). Per un esempio d'uso, vedere Esempio di esecuzione asincrona (metodo di notifica).

Resilienza della connessione

Per garantire che le applicazioni rimangano connesse a un database SQL di Microsoft Azure, il driver ODBC in Windows può ripristinare le connessioni inattive. Per altre informazioni, vedere Resilienza di connessione nel driver ODBC di Windows.

Modifiche del comportamento

In SQL Server Native Client l'opzione -y0 per sqlcmd.exe causa il troncamento dell'output a 1 MB se la larghezza di visualizzazione è 0.

A partire da ODBC Driver 11 for SQL Server, non c'è alcun limite alla quantità di dati che è possibile recuperare in un'unica colonna quando è specificato -y0. sqlcmd.exe trasmette ora colonne con larghezza fino a 2 GB (valore massimo per il tipo di dati di SQL Server).

Un'altra differenza risiede nel fatto che la specifica di -h e -y0 produce ora un errore che segnala che le opzioni sono incompatibili. -h, che specifica il numero di righe da stampare tra le intestazioni di colonna e che non è mai stato compatibile con -y0, veniva ignorato anche se non venivano stampate intestazioni.

-y0 può causare problemi a livello di prestazioni del server e della rete, a seconda della dimensione dei dati restituiti.

Vedi anche

Microsoft ODBC Driver for SQL Server in Windows