Uso delle parole chiave delle stringhe di connessione con driver OLE DB per SQL Server
Si applica a: SQL Server database SQL di Azure Istanza gestita di SQL di Azure Azure Synapse Analytics Piattaforma di sistemi analitici (PDW)
Alcune API in OLE DB Driver per SQL Server usano le stringhe di connessione per specificare gli attributi di connessione. Le stringhe di connessione sono un elenco di parole chiave con i relativi valori associati. Ogni parola chiave identifica un particolare attributo di connessione.
Nota
Il driver OLE DB per SQL Server supporta l'ambiguità nelle stringhe di connessione per mantenere la compatibilità con le versioni precedenti. È ad esempio possibile specificare alcune parole chiave più volte e usare parole chiave in conflitto con una risoluzione basata sulla posizione o sulla precedenza. Nelle versioni future di OLE DB Driver for SQL Server è possibile che non sia più consentita l'ambiguità nelle stringhe di connessione. Quando si modificano le applicazioni, è consigliabile usare OLE DB Driver per SQL Server per eliminare eventuali dipendenze dall'ambiguità delle stringhe di connessione.
Nelle sezioni seguenti vengono descritte le parole chiave che è possibile specificare con OLE DB Driver per SQL Server e gli oggetti ADO (ActiveX Data Objects) quando si usa OLE DB Driver per SQL Server come provider di dati.
Parole chiave delle stringhe di connessione per il driver OLE DB
Quando si utilizzano le applicazioni OLE DB, è possibile inizializzare gli oggetti origine dati in due modi diversi:
IDBInitialize::Initialize
IDataInitialize::GetDataSource
Nel primo caso è possibile utilizzare una stringa del provider per inizializzare le proprietà di connessione impostando la proprietà DBPROP_INIT_PROVIDERSTRING nel set di proprietà DBPROPSET_DBINIT. Nel secondo caso è possibile passare una stringa di inizializzazione al metodo IDataInitialize::GetDataSource per inizializzare le proprietà di connessione. Entrambi i metodi inizializzano le stesse proprietà di connessione OLE DB, sebbene con set di parole chiave differenti. Il set di parole chiave usato con IDataInitialize::GetDataSource rappresenta almeno la descrizione delle proprietà contenute nel gruppo delle proprietà di inizializzazione.
Per qualsiasi impostazione di stringa del provider con una proprietà OLE DB corrispondente impostata su un valore predefinito o impostata in modo esplicito su un valore, tramite il valore della proprietà OLE DB verrà eseguito l'override dell'impostazione nella stringa del provider.
Per le proprietà booleane impostate nelle stringhe del provider mediante i valori DBPROP_INIT_PROVIDERSTRING vengono usati i valori yes
e no
. Per le proprietà booleane impostate nelle stringhe di inizializzazione con IDataInitialize::GetDataSource vengono usati i valori true
e false
.
Le applicazioni che usano IDataInitialize::GetDataSource supportano anche le parole chiave usate da IDBInitialize::Initialize, ma solo per le proprietà che non hanno un valore predefinito. Se in un'applicazione viene usata sia la parola chiave IDataInitialize::GetDataSource che la parola chiave IDBInitialize::Initialize nella stringa di inizializzazione, viene usata l'impostazione della parola chiave IDataInitialize::GetDataSource. Nelle applicazioni è consigliabile non usare le parole chiave IDBInitialize::Initialize nelle stringhe di connessione IDataInitialize:GetDataSource, perché questo comportamento potrebbe non essere supportato nelle versioni future.
Nota
Una stringa di connessione passata a IDataInitialize::GetDataSource viene convertita in proprietà e applicata tramite IDBProperties::SetProperties. Se i Servizi componenti hanno rilevato la descrizione della proprietà in IDBProperties::GetPropertyInfo, la proprietà verrà applicata come autonoma. In caso contrario, verrà applicata mediante la proprietà DBPROP_PROVIDERSTRING. Ad esempio, se si specifica la stringa di connessione Data Source=server1;Server=server2, Data Source verrà impostato come proprietà, ma Server verrà inserito in una stringa del provider.
Se si indicano più istanze per la stessa proprietà specifica del provider, verrà utilizzato il primo valore della prima proprietà.
Uso di IDBInitialize::Initialize
Le stringhe di connessione usate nelle applicazioni OLE DB che usano DBPROP_INIT_PROVIDERSTRING con IDBInitialize::Initialize presentano la sintassi seguente:
connection-string ::= empty-string[;] | attribute[;] | attribute; connection-string
empty-string ::=
attribute ::= attribute-keyword=[{]attribute-value[}]
attribute-value ::= character-string
attribute-keyword ::= identifier
Anche se è facoltativo, si consiglia di racchiudere i valori di attributo tra parentesi graffe In questo modo si evitano i problemi determinati dalla presenza di caratteri non alfanumerici nei valori di attributo. Poiché si suppone che la prima parentesi graffa chiusa indichi la fine del valore, l'uso di tali parentesi nei valori non è consentito.
Uno spazio dopo il segno =
in una parola chiave di una stringa di connessione verrà interpretato come valore letterale, anche se il valore è racchiuso tra virgolette.
Nella tabella seguente vengono descritte le parole chiave che possono essere utilizzate con DBPROP_INIT_PROVIDERSTRING.
Parola chiave | Proprietà di inizializzazione | Descrizione |
---|---|---|
Addr | SSPROP_INIT_NETWORKADDRESS | Sinonimo di Address. |
Indirizzo | SSPROP_INIT_NETWORKADDRESS | Indirizzo di rete del server che esegue un'istanza di SQL Server. Address è in genere il nome di rete del server, ma può corrispondere ad altri nomi, ad esempio una pipe, un indirizzo IP o un indirizzo socket e una porta TCP/IP. Se si specifica un indirizzo IP, assicurarsi che i protocolli TCP/IP o Named Pipes siano abilitati in Gestione configurazione SQL Server. Il valore di Address ha la precedenza sul valore passato a Server nelle stringhe di connessione quando si usa OLE DB Driver per SQL Server. Tenere anche presente che, se si specifica Address=; , verrà stabilita una connessione al server specificato nella parola chiave Server, mentre, se si specifica Address= ;, Address=.; , Address=localhost; e Address=(local); , verrà stabilita una connessione al server locale.La sintassi completa per la parola chiave Address è la seguente: [protocol:]Address[,port |\pipe\pipename] protocol può essere tcp (TCP/IP), lpc (memoria condivisa) o np (named pipe). Per altre informazioni sui protocolli, vedere Configurazione di protocolli client. Se non si specifica un valore per protocol né la parola chiave Network, OLE DB Driver per SQL Server usa l'ordine dei protocolli specificato in Gestione configurazione SQL Server. port indica la porta a cui connettersi nel server specificato. Per impostazione predefinita, SQL Server usa la porta 1433. |
APP | SSPROP_INIT_APPNAME | Stringa che identifica l'applicazione. |
ApplicationIntent | SSPROP_INIT_APPLICATIONINTENT | Dichiara il tipo di carico di lavoro dell'applicazione in caso di connessione a un server. I valori possibili sono ReadOnly e ReadWrite .Il valore predefinito è ReadWrite . Per altre informazioni sul supporto di OLE DB Driver per SQL Server per Gruppi di disponibilità Always On, vedere Supporto di OLE DB Driver per SQL Server per ripristino di emergenza e disponibilità elevata. |
AttachDBFileName | SSPROP_INIT_FILENAME | Nome del file primario, incluso il nome completo del percorso, di un database collegabile. Per usare AttachDBFileName, è necessario specificare anche il nome del database con la parola chiave Database della stringa del provider. Se il database è stato collegato in precedenza, SQL Server non lo ricollega e usa il database collegato come predefinito per la connessione. |
Authentication1 | SSPROP_AUTH_MODE | Specifica l'autenticazione SQL o Microsoft Entra usata. I valori validi sono:
NOTA: la ActiveDirectoryIntegrated parola chiave può essere usata anche per l'autenticazione di Windows per SQL Server. Sostituisce le parole chiave di autenticazione Integrated Security (o Trusted_Connection ). È consigliabile che per le applicazioni che usano le parole chiave Integrated Security (o Trusted_Connection ) o le proprietà corrispondenti, il valore della parola chiave Authentication (o della relativa proprietà) sia impostato su ActiveDirectoryIntegrated per abilitare il nuovo comportamento di crittografia e convalida dei certificati.NOTA: è consigliabile che per le applicazioni che usano l'autenticazione SQL Server il valore della parola chiave Authentication (o della proprietà corrispondente) sia impostato su SqlPassword per abilitare il nuovo comportamento di crittografia e convalida dei certificati. |
Conversione automatica | SSPROP_INIT_AUTOTRANSLATE | Sinonimo di AutoTranslate. |
AutoTranslate | SSPROP_INIT_AUTOTRANSLATE | Configura la conversione dei caratteri OEM/ANSI. I valori riconosciuti sono yes e no . |
ConnectRetryCount | SSPROP_INIT_CONNECT_RETRY_COUNT | Controlla il numero di tentativi di riconnessione se la connessione si interrompe. I valori validi sono compresi tra 0 e 255 . Il valore predefinito è 1 . Se il valore è 0, non viene eseguito alcun tentativo di riconnessione. Per altre informazioni, vedere Resilienza delle connessioni inattive. |
ConnectRetryInterval | SSPROP_INIT_CONNECT_RETRY_INTERVAL | Specifica il numero di secondi che deve intercorrere tra ogni tentativo di connessione se la connessione si interrompe. I valori validi sono compresi tra 1 e 60 . Il valore predefinito è 10 . Per altre informazioni, vedere Resilienza delle connessioni inattive. |
Database | DBPROP_INIT_CATALOG | Nome del database. |
DataTypeCompatibility | SSPROP_INIT_DATATYPECOMPATIBILITY | Specifica la modalità di gestione dei tipi di dati da utilizzare. I valori riconosciuti sono 0 per i tipi di dati del provider e 80 per i tipi di dati di SQL Server 2000. |
Encrypt1 | SSPROP_INIT_ENCRYPT | Specifica se i dati devono essere crittografati prima del relativo invio in rete. I valori possibili sono Optional , Mandatory e Strict . Il valore predefinito è Mandatory . Per le versioni 18.x.x, vedere Differenze tra le versioni principali di MSOLEDBSQL. |
FailoverPartner | SSPROP_INIT_FAILOVERPARTNER | Nome del server di failover utilizzato per il mirroring del database. |
FailoverPartnerSPN | SSPROP_INIT_FAILOVERPARTNERSPN | Nome SPN del partner di failover. Il valore predefinito è una stringa vuota. Una stringa vuota in OLE DB Driver per SQL Server determina l'uso del nome SPN predefinito generato dal provider. |
HostNameInCertificate | SSPROP_INIT_HOST_NAME_CERTIFICATE | Nome host da usare per la convalida del certificato TLS/SSL di SQL Server. Se la parola chiave HostNameInCertificate non è impostata, il driver usa il valore della parola chiave Server nell'URL di connessione come nome host per convalidare il certificato TLS/SSL di SQL Server. NOTA: questa proprietà viene ignorata se il certificato del server è considerato attendibile. Se il valore di Encrypt è impostato su Strict , il certificato viene sempre convalidato. |
Lingua | SSPROP_INIT_CURRENTLANGUAGE | Lingua di SQL Server. |
MarsConn | SSPROP_INIT_MARSCONNECTION | Abilita o disabilita MARS (Multiple Active Result Set) nella connessione se il server è SQL Server 2005 (9.x) o versione successiva. I valori possibili sono yes e no . Il valore predefinito è no . |
MultiSubnetFailover | SSPROP_INIT_MULTISUBNETFAILOVER | Specificare sempre MultiSubnetFailover=Yes quando si stabilisce la connessione al listener del gruppo di disponibilità di un gruppo di disponibilità di SQL Server o di un'istanza del cluster di failover di SQL Server. Con MultiSubnetFailover=Yes è possibile configurare il driver OLE DB per SQL Server per fornire un rilevamento e una connessione più veloci al server attualmente attivo. I valori possibili sono Yes e No . Il valore predefinito è No . Ad esempio:MultiSubnetFailover=Yes Per altre informazioni sul supporto di OLE DB Driver per SQL Server per Gruppi di disponibilità Always On, vedere Supporto di OLE DB Driver per SQL Server per ripristino di emergenza e disponibilità elevata. |
Net | SSPROP_INIT_NETWORKLIBRARY | Sinonimo di Network. |
Rete | SSPROP_INIT_NETWORKLIBRARY | Libreria di rete usata per stabilire una connessione a un'istanza di SQL Server nell'organizzazione. |
Network Library | SSPROP_INIT_NETWORKLIBRARY | Sinonimo di Network. |
PacketSize | SSPROP_INIT_PACKETSIZE | Dimensioni del pacchetto del flusso TDS. Il valore predefinito è 0 (il valore effettivo verrà determinato dal server). |
PersistSensitive | DBPROP_AUTH_PERSIST_SENSITIVE_AUTHINFO | Accetta le stringhe yes e no come valori. Se si usa no , l'oggetto origine dati non può salvare in modo permanente le informazioni di autenticazione sensibili |
PWD | DBPROP_AUTH_PASSWORD | Password di accesso di SQL Server. |
Server | DBPROP_INIT_DATASOURCE | Nome di un'istanza di SQL Server. Il valore deve corrispondere al nome di un server nella rete, a un indirizzo IP o al nome di un alias di Gestione configurazione SQL Server. Se non viene specificato un nome, viene stabilita una connessione all'istanza predefinita nel computer locale. La parola chiave Address sostituisce la parola chiave Server. È possibile connettersi all'istanza predefinita nel server locale specificando una delle opzioni seguenti: Server=; Server=.; Server=(local); Server=(local); Server=(localhost); Server=(localdb)\instancename; Per altre informazioni sul supporto per Local DB, vedere Supporto del driver OLE DB per SQL Server per Local DB. Per specificare un'istanza denominata di SQL Server, aggiungere \InstanceName. Se non viene specificato un server, viene stabilita una connessione all'istanza predefinita nel computer locale. Se si specifica un indirizzo IP, assicurarsi che i protocolli TCP/IP o Named Pipes siano abilitati in Gestione configurazione SQL Server. La sintassi completa per la parola chiave Server è la seguente: Server=[protocollo:]Server[,porta] protocol può essere tcp (TCP/IP), lpc (memoria condivisa) o np (named pipe). L'esempio seguente specifica una named pipe: np:\\.\pipe\MSSQL$MYINST01\sql\query La riga precedente specifica il protocollo Named Pipes ( np ), una named pipe nel computer locale (\\.\pipe ), il nome dell'istanza di SQL Server (MSSQL$MYINST01 ) e il nome predefinito della named pipe (sql/query ).Se non si specifica un valore per protocol né la parola chiave Network, OLE DB Driver per SQL Server usa l'ordine dei protocolli specificato in Gestione configurazione SQL Server. port indica la porta a cui connettersi nel server specificato. Per impostazione predefinita, SQL Server usa la porta 1433. Gli spazi vengono ignorati all'inizio del valore passato a Server nelle stringhe di connessione quando si usa OLE DB Driver per SQL Server. |
ServerCertificate | SSPROP_INIT_SERVER_CERTIFICATE | Specifica il percorso di un file di certificato per cui cercare la corrispondenza con il certificato TLS/SSL di SQL Server. Questa opzione può essere usata solo quando è abilitata la crittografia Strict . I formati di certificato accettati sono PEM, DER e CER. Se specificato, il certificato di SQL Server viene controllato esaminando se il certificato fornito è una corrispondenza esatta. |
ServerSPN | SSPROP_INIT_SERVERSPN | Nome SPN del server. Il valore predefinito è una stringa vuota. Una stringa vuota in OLE DB Driver per SQL Server determina l'uso del nome SPN predefinito generato dal provider. |
Timeout | DBPROP_INIT_TIMEOUT | Tempo di attesa in secondi per il completamento dell'inizializzazione dell'origine dati. |
TransparentNetworkIPResolution | SSPROP_INIT_TNIR | Influisce sulla sequenza di connessione quando il primo IP risolto del nome host non risponde e sono presenti più IP associati al nome host. La risoluzione dell'IP di rete trasparente interagisce con MultiSubnetFailover per fornire diverse sequenze di connessione. I valori possibili sono Yes e No . Il valore predefinito è Yes . Per altre informazioni vedere Uso della risoluzione dell'IP di rete trasparente. |
Trusted_Connection | DBPROP_AUTH_INTEGRATED | Se questa opzione è impostata su yes , indica a OLE DB Driver per SQL Server di usare l'autenticazione di Windows per la convalida dell'accesso. In caso contrario, OLE DB Driver per SQL Server userà un nome utente e una password di SQL Server per la convalida dell'accesso ed è necessario specificare le parole chiave UID e PWD. |
TrustServerCertificate1 | SSPROP_INIT_TRUST_SERVER_CERTIFICATE | Accetta le stringhe yes e no come valori. Il valore predefinito è no e indica che il certificato server verrà convalidato. |
UID | DBPROP_AUTH_USERID | Nome di accesso di SQL Server. |
UseFMTONLY | SSPROP_INIT_USEFMTONLY | Controlla la modalità di recupero dei metadati durante la connessione a SQL Server 2012 (11.x) e versioni successive. I valori possibili sono yes e no . Il valore predefinito è no .Per impostazione predefinita, OLE DB Driver per SQL Server usa le stored procedure sp_describe_first_result_set e sp_describe_undeclared_parameters per recuperare i metadati. Queste stored procedure presentano alcune limitazioni, ad esempio hanno esito negativo se usate con tabelle temporanee. L'impostazione di UseFMTONLY su yes indica al driver di usare SET FMTONLY per il recupero dei metadati. |
UseProcForPrepare | SSPROP_INIT_USEPROCFORPREP | Questa parola chiave è deprecata e la relativa impostazione viene ignorata da OLE DB Driver per SQL Server. |
WSID | SSPROP_INIT_WSID | Identificatore della workstation. |
[1]: Per migliorare la sicurezza, il comportamento della crittografia e della convalida dei certificati vengono modificati quando si usano le proprietà di inizializzazione del token di autenticazione o accesso oppure le corrispondenti parole chiave per la stringa di connessione. Per altre informazioni, vedere Crittografia e convalida di certificati.
Uso di IDataInitialize::GetDataSource
Le stringhe di connessione usate nelle applicazioni OLE DB che usano IDataInitialize::GetDataSource presentano la sintassi seguente:
connection-string ::= empty-string[;] | attribute[;] | attribute; connection-string
empty-string ::=
attribute ::= attribute-keyword=[quote]attribute-value[quote]
attribute-value ::= character-string
attribute-keyword ::= identifier
quote ::= " | '
L'utilizzo delle proprietà deve essere conforme alla sintassi consentita nel relativo ambito. Per WSID vengono ad esempio usate le parentesi graffe ({}) come virgolette e per Application Name vengono usate le virgolette semplici (') o doppie ("). Solo per le proprietà delle stringhe è possibile utilizzare le virgolette. Se si tenta di usare le virgolette con una proprietà integer o enumerata, verrà generato un errore Connection String doesn't conform to OLE DB specification
.
È consigliabile, ma non obbligatorio, racchiudere i valori di attributo tra virgolette semplici o doppie. In questo modo si evitano i problemi determinati dalla presenza di caratteri non alfanumerici nei valori. Il carattere di virgolette usato può essere presente anche nei valori, se questi sono racchiusi tra virgolette doppie.
Uno spazio dopo il segno = in una parola chiave di una stringa di connessione verrà interpretato come valore letterale, anche se il valore è racchiuso tra virgolette.
Se una stringa di connessione include più di una delle proprietà elencate nella tabella seguente, verrà utilizzato il valore dell'ultima proprietà.
Nella tabella seguente vengono descritte le parole chiave che possono essere usate con IDataInitialize::GetDataSource:
Parola chiave | Proprietà di inizializzazione | Descrizione |
---|---|---|
Access Token1 | SSPROP_AUTH_ACCESS_TOKEN | Token di accesso usato per eseguire l'autenticazione per Microsoft Entra ID. NOTA: è un errore specificare questa parola chiave e anche le parole chiave UID , PWD , Trusted_Connection o quelle della stringa di connessione Authentication oppure le proprietà/parole chiave corrispondenti. |
Nome dell'applicazione | SSPROP_INIT_APPNAME | Stringa che identifica l'applicazione. |
Application Intent | SSPROP_INIT_APPLICATIONINTENT | Dichiara il tipo di carico di lavoro dell'applicazione in caso di connessione a un server. I valori possibili sono ReadOnly e ReadWrite .Il valore predefinito è ReadWrite . Per altre informazioni sul supporto di OLE DB Driver per SQL Server per Gruppi di disponibilità Always On, vedere Supporto di OLE DB Driver per SQL Server per ripristino di emergenza e disponibilità elevata. |
Authentication1 | SSPROP_AUTH_MODE | Specifica l'autenticazione SQL o Microsoft Entra usata. I valori validi sono:
NOTA: la ActiveDirectoryIntegrated parola chiave può essere usata anche per l'autenticazione di Windows per SQL Server. Sostituisce le parole chiave di autenticazione Integrated Security (o Trusted_Connection ). È consigliabile che per le applicazioni che usano le parole chiave Integrated Security (o Trusted_Connection ) o le proprietà corrispondenti, il valore della parola chiave Authentication (o della relativa proprietà) sia impostato su ActiveDirectoryIntegrated per abilitare il nuovo comportamento di crittografia e convalida dei certificati.NOTA: è consigliabile che per le applicazioni che usano l'autenticazione SQL Server il valore della parola chiave Authentication (o della proprietà corrispondente) sia impostato su SqlPassword per abilitare il nuovo comportamento di crittografia e convalida dei certificati. |
Conversione automatica | SSPROP_INIT_AUTOTRANSLATE | Configura la conversione dei caratteri OEM/ANSI. I valori riconosciuti sono true e false . |
Connect Timeout | DBPROP_INIT_TIMEOUT | Tempo di attesa in secondi per il completamento dell'inizializzazione dell'origine dati. |
Numero di tentativi di connessione | SSPROP_INIT_CONNECT_RETRY_COUNT | Controlla il numero di tentativi di riconnessione se la connessione si interrompe. I valori validi sono compresi tra 0 e 255 . Il valore predefinito è 1 . Se il valore è 0, non viene eseguito alcun tentativo di riconnessione. Per altre informazioni, vedere Resilienza delle connessioni inattive. |
Intervallo dei tentativi di connessione | SSPROP_INIT_CONNECT_RETRY_INTERVAL | Specifica il numero di secondi che deve intercorrere tra ogni tentativo di connessione se la connessione si interrompe. I valori validi sono compresi tra 1 e 60 . Il valore predefinito è 10 . Per altre informazioni, vedere Resilienza delle connessioni inattive. |
Current Language | SSPROPT_INIT_CURRENTLANGUAGE | Nome della lingua di SQL Server. |
Origine dati | DBPROP_INIT_DATASOURCE | Nome di un'istanza di SQL Server nell'organizzazione. Se non viene specificato un nome, viene stabilita una connessione all'istanza predefinita nel computer locale. Per altre informazioni sulla sintassi valida per gli indirizzi, vedere la descrizione della parola chiave Server in questo articolo. |
DataTypeCompatibility | SSPROP_INIT_DATATYPECOMPATIBILITY | Specifica la modalità di gestione dei tipi di dati da utilizzare. I valori riconosciuti sono 0 per i tipi di dati del provider e 80 per i tipi di dati di SQL Server 2000 (8.x). |
Partner di failover | SSPROP_INIT_FAILOVERPARTNER | Nome del server di failover utilizzato per il mirroring del database. |
Failover Partner SPN | SSPROP_INIT_FAILOVERPARTNERSPN | Nome SPN del partner di failover. Il valore predefinito è una stringa vuota. Una stringa vuota in OLE DB Driver per SQL Server determina l'uso del nome SPN predefinito generato dal provider. |
Host Name In Certificate | SSPROP_INIT_HOST_NAME_CERTIFICATE | Nome host da usare per la convalida del certificato TLS/SSL di SQL Server. Se la parola chiave Host Name In Certificate non è impostata, il driver usa il valore della parola chiave Data Source nell'URL di connessione come nome host per convalidare il certificato TLS/SSL di SQL Server. NOTA: questa proprietà viene ignorata se il certificato del server è considerato attendibile. Se la parola chiave Use Encryption for Data è impostata su Strict , il certificato viene sempre convalidato. |
Catalogo iniziale | DBPROP_INIT_CATALOG | Nome del database. |
Nome file iniziale | SSPROP_INIT_FILENAME | Nome del file primario, incluso il nome completo del percorso, di un database collegabile. Per usare AttachDBFileName, è necessario specificare anche il nome del database con la parola chiave DATABASE della stringa del provider. Se il database è stato collegato in precedenza, SQL Server non lo ricollega e usa il database collegato come predefinito per la connessione. |
Sicurezza integrata | DBPROP_AUTH_INTEGRATED | Accetta il valore SSPI per l'autenticazione di Windows. |
MARS Connection | SSPROP_INIT_MARSCONNECTION | Abilita o disabilita MARS (Multiple Active Result Sets) nella connessione. I valori riconosciuti sono true e false . Il valore predefinito è false . |
MultiSubnetFailover | SSPROP_INIT_MULTISUBNETFAILOVER | Specificare sempre MultiSubnetFailover=True quando si stabilisce la connessione al listener del gruppo di disponibilità di un gruppo di disponibilità di SQL Server o di un'istanza del cluster di failover di SQL Server. Con MultiSubnetFailover=True è possibile configurare il driver OLE DB per SQL Server per offrire un rilevamento e una connessione più veloci al server attualmente attivo. I valori possibili sono True e False . Il valore predefinito è False . Ad esempio:MultiSubnetFailover=True Per altre informazioni sul supporto di OLE DB Driver per SQL Server per Gruppi di disponibilità Always On, vedere Supporto di OLE DB Driver per SQL Server per ripristino di emergenza e disponibilità elevata. |
Network Address | SSPROP_INIT_NETWORKADDRESS | Indirizzo di rete di un'istanza di SQL Server nell'organizzazione. Per altre informazioni sulla sintassi valida per gli indirizzi, vedere la descrizione della parola chiave Address in questo articolo. |
Network Library | SSPROP_INIT_NETWORKLIBRARY | Libreria di rete usata per stabilire una connessione a un'istanza di SQL Server nell'organizzazione. |
Packet Size | SSPROP_INIT_PACKETSIZE | Dimensioni del pacchetto del flusso TDS. Il valore predefinito è 0 (il valore effettivo verrà determinato dal server). |
Password | DBPROP_AUTH_PASSWORD | Password di accesso di SQL Server. |
Persist Security Info | DBPROP_AUTH_PERSIST_SENSITIVE_AUTHINFO | Accetta le stringhe true e false come valori. Se il valore è false , l'oggetto origine dati non può salvare in modo permanente le informazioni di autenticazione sensibili |
Provider | Per OLE DB Driver per SQL Server, questo valore deve essere "MSOLEDBSQL19" o "MSOLEDBSQL". | |
Certificato server | SSPROP_INIT_SERVER_CERTIFICATE | Specifica il percorso di un file di certificato per cui cercare la corrispondenza con il certificato TLS/SSL di SQL Server. Questa opzione può essere usata solo quando è abilitata la crittografia Strict . I formati di certificato accettati sono PEM, DER e CER. Se specificato, il certificato di SQL Server viene controllato esaminando se il certificato fornito è una corrispondenza esatta. |
Server SPN | SSPROP_INIT_SERVERSPN | Nome SPN del server. Il valore predefinito è una stringa vuota. Una stringa vuota in OLE DB Driver per SQL Server determina l'uso del nome SPN predefinito generato dal provider. |
TransparentNetworkIPResolution | SSPROP_INIT_TNIR | Influisce sulla sequenza di connessione quando il primo IP risolto del nome host non risponde e sono presenti più IP associati al nome host. La risoluzione dell'IP di rete trasparente interagisce con MultiSubnetFailover per fornire diverse sequenze di connessione. I valori possibili sono True e False . Il valore predefinito è True . Per altre informazioni vedere Uso della risoluzione dell'IP di rete trasparente. |
Trust Server Certificate1 | SSPROP_INIT_TRUST_SERVER_CERTIFICATE | Accetta le stringhe true e false come valori. Il valore predefinito è false e indica che il certificato server verrà convalidato. |
Use Encryption for Data1 | SSPROP_INIT_ENCRYPT | Specifica se i dati devono essere crittografati prima del relativo invio in rete. I valori possibili sono Optional , Mandatory e Strict . Il valore predefinito è Mandatory . Per le versioni 18.x.x, vedere Differenze tra le versioni principali di MSOLEDBSQL. |
Use FMTONLY | SSPROP_INIT_USEFMTONLY | Controlla la modalità di recupero dei metadati durante la connessione a SQL Server 2012 (11.x) e versioni successive. I valori possibili sono true e false . Il valore predefinito è false .Per impostazione predefinita, OLE DB Driver per SQL Server usa le stored procedure sp_describe_first_result_set e sp_describe_undeclared_parameters per recuperare i metadati. Queste stored procedure presentano alcune limitazioni, ad esempio hanno esito negativo se usate con tabelle temporanee. L'impostazione di Use FMTONLY su true indica al driver di usare SET FMTONLY per il recupero dei metadati. |
ID utente | DBPROP_AUTH_USERID | Nome di accesso di SQL Server. |
Workstation ID | SSPROP_INIT_WSID | Identificatore della workstation. |
[1]: Per migliorare la sicurezza, il comportamento della crittografia e della convalida dei certificati vengono modificati quando si usano le proprietà di inizializzazione del token di autenticazione o accesso oppure le corrispondenti parole chiave per la stringa di connessione. Per i dettagli, vedere Crittografia e convalida di certificati.
Nota
Nella stringa di connessione la proprietà Old Password
imposta SSPROP_AUTH_OLD_PASSWORD, ovvero la password corrente (probabilmente scaduta) che non è disponibile tramite una proprietà della stringa del provider.
Parole chiave delle stringhe di connessione per gli oggetti ADO (ActiveX Data Objects)
Le applicazioni ADO impostano la proprietà ConnectionString degli oggetti ADODBConnection o forniscono una stringa di connessione come parametro al metodo Open degli oggetti ADODBConnection.
Le applicazioni ADO supportano anche le parole chiave usate dal metodo IDBInitialize::Initialize OLE DB, ma solo per le proprietà che non hanno un valore predefinito. Se in un'applicazione vengono usate sia le parole chiave ADO che le parole chiave IDBInitialize::Initialize nella stringa di inizializzazione, verrà usata l'impostazione della parola chiave ADO. Nelle applicazioni è consigliabile usare solo parole chiave delle stringhe di connessione ADO.
Le stringhe di connessione utilizzate da ADO presentano la sintassi seguente:
connection-string ::= empty-string[;] | attribute[;] | attribute; connection-string
empty-string ::=
attribute ::= attribute-keyword=["]attribute-value["]
attribute-value ::= character-string
attribute-keyword ::= identifier
È consigliabile, ma non obbligatorio, racchiudere i valori di attributo tra virgolette doppie. In questo modo si evitano i problemi determinati dalla presenza di caratteri non alfanumerici nei valori. I valori di attributo non possono contenere virgolette doppie.
Nella tabella seguente vengono descritte le parole chiave che possono essere utilizzate con una stringa di connessione ADO:
Parola chiave | Proprietà di inizializzazione | Descrizione |
---|---|---|
Access Token1 | SSPROP_AUTH_ACCESS_TOKEN | Token di accesso usato per eseguire l'autenticazione per Microsoft Entra ID. NOTA: è un errore specificare questa parola chiave e anche le parole chiave UID , PWD , Trusted_Connection o quelle della stringa di connessione Authentication oppure le proprietà/parole chiave corrispondenti. |
Application Intent | SSPROP_INIT_APPLICATIONINTENT | Dichiara il tipo di carico di lavoro dell'applicazione in caso di connessione a un server. I valori possibili sono ReadOnly e ReadWrite .Il valore predefinito è ReadWrite . Per altre informazioni sul supporto di OLE DB Driver per SQL Server per Gruppi di disponibilità Always On, vedere Supporto di OLE DB Driver per SQL Server per ripristino di emergenza e disponibilità elevata. |
Nome dell'applicazione | SSPROP_INIT_APPNAME | Stringa che identifica l'applicazione. |
Authentication1 | SSPROP_AUTH_MODE | Specifica l'autenticazione SQL o Microsoft Entra usata. I valori validi sono:
NOTA: la ActiveDirectoryIntegrated parola chiave può essere usata anche per l'autenticazione di Windows per SQL Server. Sostituisce le parole chiave di autenticazione Integrated Security (o Trusted_Connection ). È consigliabile che per le applicazioni che usano le parole chiave Integrated Security (o Trusted_Connection ) o le proprietà corrispondenti, il valore della parola chiave Authentication (o della relativa proprietà) sia impostato su ActiveDirectoryIntegrated per abilitare il nuovo comportamento di crittografia e convalida dei certificati.NOTA: è consigliabile che per le applicazioni che usano l'autenticazione SQL Server il valore della parola chiave Authentication (o della proprietà corrispondente) sia impostato su SqlPassword per abilitare il nuovo comportamento di crittografia e convalida dei certificati. |
Conversione automatica | SSPROP_INIT_AUTOTRANSLATE | Configura la conversione dei caratteri OEM/ANSI. I valori riconosciuti sono true e false . |
Connect Timeout | DBPROP_INIT_TIMEOUT | Tempo di attesa in secondi per il completamento dell'inizializzazione dell'origine dati. |
Numero di tentativi di connessione | SSPROP_INIT_CONNECT_RETRY_COUNT | Controlla il numero di tentativi di riconnessione se la connessione si interrompe. I valori validi sono compresi tra 0 e 255 . Il valore predefinito è 1 . Se il valore è 0, non viene eseguito alcun tentativo di riconnessione. Per altre informazioni, vedere Resilienza delle connessioni inattive. |
Intervallo dei tentativi di connessione | SSPROP_INIT_CONNECT_RETRY_INTERVAL | Specifica il numero di secondi che deve intercorrere tra ogni tentativo di connessione se la connessione si interrompe. I valori validi sono compresi tra 1 e 60 . Il valore predefinito è 10 . Per altre informazioni, vedere Resilienza delle connessioni inattive. |
Current Language | SSPROPT_INIT_CURRENTLANGUAGE | Nome della lingua di SQL Server. |
Origine dati | DBPROP_INIT_DATASOURCE | Nome di un'istanza di SQL Server nell'organizzazione. Se non viene specificato un nome, viene stabilita una connessione all'istanza predefinita nel computer locale. Per altre informazioni sulla sintassi valida per gli indirizzi, vedere la descrizione della parola chiave Server in questo articolo. |
DataTypeCompatibility | SSPROP_INIT_DATATYPECOMPATIBILITY | Specifica la modalità di gestione dei tipi di dati che verrà utilizzata. I valori riconosciuti sono 0 per i tipi di dati del provider e 80 per i tipi di dati di SQL Server 2000. |
Partner di failover | SSPROP_INIT_FAILOVERPARTNER | Nome del server di failover utilizzato per il mirroring del database. |
Failover Partner SPN | SSPROP_INIT_FAILOVERPARTNERSPN | Nome SPN del partner di failover. Il valore predefinito è una stringa vuota. Una stringa vuota in OLE DB Driver per SQL Server determina l'uso del nome SPN predefinito generato dal provider. |
Host Name In Certificate | SSPROP_INIT_HOST_NAME_CERTIFICATE | Nome host da usare per la convalida del certificato TLS/SSL di SQL Server. Se la parola chiave Host Name In Certificate non è impostata, il driver usa il valore della parola chiave Data Source nell'URL di connessione come nome host per convalidare il certificato TLS/SSL di SQL Server. NOTA: questa proprietà viene ignorata se il certificato del server è considerato attendibile. Se la parola chiave Use Encryption for Data è impostata su Strict , il certificato viene sempre convalidato. |
Catalogo iniziale | DBPROP_INIT_CATALOG | Nome del database. |
Nome file iniziale | SSPROP_INIT_FILENAME | Nome del file primario, incluso il nome completo del percorso, di un database collegabile. Per usare AttachDBFileName, è necessario specificare anche il nome del database con la parola chiave DATABASE della stringa del provider. Se il database è stato collegato in precedenza, SQL Server non lo ricollega e usa il database collegato come predefinito per la connessione. |
Sicurezza integrata | DBPROP_AUTH_INTEGRATED | Accetta il valore SSPI per l'autenticazione di Windows. |
MARS Connection | SSPROP_INIT_MARSCONNECTION | Abilita o disabilita MARS (Multiple Active Result Set) nella connessione se il server è SQL Server 2005 (9.x) o versione successiva. I valori riconosciuti sono true e false . Il valore predefinito è false . |
MultiSubnetFailover | SSPROP_INIT_MULTISUBNETFAILOVER | Specificare sempre MultiSubnetFailover=True quando si stabilisce la connessione al listener del gruppo di disponibilità di un gruppo di disponibilità di SQL Server o di un'istanza del cluster di failover di SQL Server. Con MultiSubnetFailover=True è possibile configurare il driver OLE DB per SQL Server per offrire un rilevamento e una connessione più veloci al server attualmente attivo. I valori possibili sono True e False . Il valore predefinito è False . Ad esempio:MultiSubnetFailover=True Per altre informazioni sul supporto di OLE DB Driver per SQL Server per Gruppi di disponibilità Always On, vedere Supporto di OLE DB Driver per SQL Server per ripristino di emergenza e disponibilità elevata. |
Network Address | SSPROP_INIT_NETWORKADDRESS | Indirizzo di rete di un'istanza di SQL Server nell'organizzazione. Per altre informazioni sulla sintassi valida per gli indirizzi, vedere la descrizione della parola chiave Address in questo articolo. |
Network Library | SSPROP_INIT_NETWORKLIBRARY | Libreria di rete usata per stabilire una connessione a un'istanza di SQL Server nell'organizzazione. |
Packet Size | SSPROP_INIT_PACKETSIZE | Dimensioni del pacchetto del flusso TDS. Il valore predefinito è 0 (il valore effettivo verrà determinato dal server). |
Password | DBPROP_AUTH_PASSWORD | Password di accesso di SQL Server. |
Persist Security Info | DBPROP_AUTH_PERSIST_SENSITIVE_AUTHINFO | Accetta le stringhe true e false come valori. Se il valore è false , l'oggetto origine dati non può salvare in modo permanente le informazioni di autenticazione sensibili. |
Provider | Per OLE DB Driver per SQL Server il valore è MSOLEDBSQL19 o MSOLEDBSQL . |
|
Certificato server | SSPROP_INIT_SERVER_CERTIFICATE | Specifica il percorso di un file di certificato per cui cercare la corrispondenza con il certificato TLS/SSL di SQL Server. Questa opzione può essere usata solo quando è abilitata la crittografia Strict . I formati di certificato accettati sono PEM, DER e CER. Se specificato, il certificato di SQL Server viene controllato esaminando se il certificato fornito è una corrispondenza esatta. |
Server SPN | SSPROP_INIT_SERVERSPN | Nome SPN del server. Il valore predefinito è una stringa vuota. Una stringa vuota in OLE DB Driver per SQL Server determina l'uso del nome SPN predefinito generato dal provider. |
TransparentNetworkIPResolution | SSPROP_INIT_TNIR | Influisce sulla sequenza di connessione quando il primo IP risolto del nome host non risponde e sono presenti più IP associati al nome host. La risoluzione dell'IP di rete trasparente interagisce con MultiSubnetFailover per fornire diverse sequenze di connessione. I valori possibili sono True e False . Il valore predefinito è True . Per altre informazioni vedere Uso della risoluzione dell'IP di rete trasparente. |
Trust Server Certificate1 | SSPROP_INIT_TRUST_SERVER_CERTIFICATE | Accetta le stringhe true e false come valori. Il valore predefinito è false e indica che il certificato server verrà convalidato. |
Use Encryption for Data1 | SSPROP_INIT_ENCRYPT | Specifica se i dati devono essere crittografati prima del relativo invio in rete. I valori possibili sono Optional , Mandatory e Strict . Il valore predefinito è Mandatory . Per le versioni 18.x.x, vedere Differenze tra le versioni principali di MSOLEDBSQL. |
Use FMTONLY | SSPROP_INIT_USEFMTONLY | Controlla la modalità di recupero dei metadati durante la connessione a SQL Server 2012 (11.x) e versioni successive. I valori possibili sono true e false . Il valore predefinito è false .Per impostazione predefinita, OLE DB Driver per SQL Server usa le stored procedure sp_describe_first_result_set e sp_describe_undeclared_parameters per recuperare i metadati. Queste stored procedure presentano alcune limitazioni, ad esempio hanno esito negativo se usate con tabelle temporanee. L'impostazione di Use FMTONLY su true indica al driver di usare SET FMTONLY per il recupero dei metadati. |
ID utente | DBPROP_AUTH_USERID | Nome di accesso di SQL Server. |
Workstation ID | SSPROP_INIT_WSID | Identificatore della workstation. |
[1]: Per migliorare la sicurezza, il comportamento della crittografia e della convalida dei certificati vengono modificati quando si usano le proprietà di inizializzazione del token di autenticazione o accesso oppure le corrispondenti parole chiave per la stringa di connessione. Per i dettagli, vedere Crittografia e convalida di certificati.
Nota
Nella stringa di connessione la proprietà "Old Password" imposta SSPROP_AUTH_OLD_PASSWORD, ovvero la password corrente (probabilmente scaduta) che non è disponibile tramite una proprietà della stringa del provider.
Vedi anche
Compilazione di applicazioni con il driver OLE DB per SQL Server