Utilizzo delle parole chiave delle stringhe di connessione con SQL Server Native Client
In alcune API di SQL Server Native Client vengono utilizzate stringhe di connessione per specificare gli attributi di connessione. Le stringhe di connessione sono elenchi di parole chiave con i relativi valori associati. Ogni parola chiave identifica un particolare attributo di connessione.
Nota
SQL Server Native Client 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 utilizzare parole chiave in conflitto con una risoluzione basata sulla posizione o sulla precedenza. Le versioni successive di SQL Server Native Client potrebbero non supportare l'ambiguità nelle stringhe di connessione. Quando si modificano le applicazioni, è consigliabile utilizzare SQL Server Native Client per eliminare l'eventuale dipendenza dall'ambiguità delle stringhe di connessione.
Nelle sezioni successive vengono descritte le parole chiave che è possibile specificare con il provider OLE DB di SQL Server Native Client, il driver ODBC di SQL Server Native Client e gli oggetti ADO (ActiveX Data Objects) quando si utilizza SQL Server Native Client come provider di dati.
Parole chiave delle stringhe di connessione per il provider 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 utilizzato 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 utilizzati i valori "yes" e "no". Per le proprietà booleane impostate nelle stringhe di inizializzazione mediante IDataInitialize::GetDataSource vengono utilizzati i valori "true" e "false".
Le applicazioni che utilizzano IDataInitialize::GetDataSource supportano anche le parole chiave utilizzate da IDBInitialize::Initialize ma solo per le proprietà che non dispongono di un valore predefinito. Se un'applicazione utilizza sia la parola chiave IDataInitialize::GetDataSource che la parola chiave IDBInitialize::Initialize nella stringa di inizializzazione, viene utilizzata l'impostazione della parola chiave IDataInitialize::GetDataSource. Nelle applicazioni è consigliabile non specificare le parole chiave IDBInitialize::Initialize nelle stringhe di connessione IDataInitialize:GetDataSource, in quanto questo comportamento potrebbe non essere supportato nelle versioni successive.
Nota
Una stringa di connessione passata a IDataInitialize::GetDataSource viene convertita in proprietà e applicata tramite IDBProperties::SetProperties. Se Servizi componenti ha rilevato la descrizione della proprietà in IDBProperties::GetPropertyInfo, la proprietà verrà applicata come autonoma. In caso contrario verrà applicata tramite la proprietà DBPROP_PROVIDERSTRING. Se, ad esempio, si specifica la stringa di connessione Data Source=server1;Server=server2, Data Source verrà impostato come proprietà, ma Server verrà inserito nella stringa del provider.
Se si indicano più istanze per la stessa proprietà specifica del provider, verrà utilizzato il primo valore della prima proprietà.
Le stringhe di connessione utilizzate nelle applicazioni OLE DB che utilizzano 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
È consigliabile racchiudere i valori di attributo tra parentesi graffe per evitare i problemi determinati dalla presenza di caratteri non alfanumerici nei valori di attributo. Poiché si suppone che la prima parentesi graffa di chiusura termini il 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 fra 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". |
Address |
SSPROP_INIT_NETWORKADDRESS |
Indirizzo di rete di un'istanza di SQL Server nell'organizzazione. Per ulteriori informazioni sulla sintassi valida per gli indirizzi, vedere la descrizione della parola chiave ODBC Address, più avanti in questo argomento. |
APP |
SSPROP_INIT_APPNAME |
Stringa che identifica l'applicazione. |
AttachDBFileName |
SSPROP_INIT_FILENAME |
Nome del file primario, incluso il nome completo del percorso, di un database collegabile. Per utilizzare 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 utilizza il database collegato come impostazione predefinita per la connessione. |
Auto Translate |
SSPROP_INIT_AUTOTRANSLATE |
Sinonimo di "AutoTranslate". |
AutoTranslate |
SSPROP_INIT_AUTOTRANSLATE |
Configura la conversione dei caratteri OEM/ANSI. I valori riconosciuti sono "yes" e "no". |
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. |
Encrypt |
SSPROP_INIT_ENCRYPT |
Specifica se i dati devono essere crittografati prima del relativo invio in rete. I valori possibili sono "yes" e "no". Il valore predefinito è "no". |
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. In presenza di una stringa vuota, SQL Server Native Client utilizza il nome SPN predefinito generato dal provider. |
Language |
SSPROPT_INIT_CURRENTLANGUAGE |
Lingua di SQL Server. |
MarsConn |
SSPROP_INIT_MARSCONNECTION |
Abilita o disabilita MARS (Multiple Active Result Sets) nella connessione se il server è SQL Server 2005 o versione successiva. I valori possibili sono "yes" e "no". Il valore predefinito è "no". |
Net |
SSPROP_INIT_NETWORKLIBRARY |
Sinonimo di "Network". |
Network |
SSPROP_INIT_NETWORKLIBRARY |
Libreria di rete utilizzata 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 di rete. Il valore predefinito è 0, a indicare che il server eseguirà la configurazione delle dimensioni del pacchetto in base all'impostazione di sp_configure 'network packet size'. |
PersistSensitive |
DBPROP_AUTH_PERSIST_SENSITIVE_AUTHINFO |
Accetta le stringhe "yes" e "no" come valori. Se impostata su "no", l'oggetto origine dati non è in grado di rendere persistenti le informazioni di autenticazione riservate |
PWD |
DBPROP_AUTH_PASSWORD |
Password di accesso di SQL Server. |
Server |
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 ulteriori informazioni sulla sintassi valida per gli indirizzi, vedere la descrizione della parola chiave ODBC Server in questo argomento. |
ServerSPN |
SSPROP_INIT_SERVERSPN |
Nome SPN del server. Il valore predefinito è una stringa vuota. In presenza di una stringa vuota, SQL Server Native Client utilizza il nome SPN predefinito generato dal provider. |
Timeout |
DBPROP_INIT_TIMEOUT |
Tempo di attesa in secondi per il completamento dell'inizializzazione dell'origine dati. |
Trusted_Connection |
DBPROP_AUTH_INTEGRATED |
Se impostata su "yes", indica al provider OLE DB di SQL Server Native Client di utilizzare la Modalità di autenticazione di Windows per la convalida dell'accesso. In caso contrario, indica al provider OLE DB di SQL Server Native Client di utilizzare un nome utente e una password di SQL Server per la convalida dell'accesso e richiede la specifica delle parole chiave UID e PWD. |
TrustServerCertificate |
SSPROP_INIT_TRUST_SERVER_CERTIFICATE |
Accetta le stringhe "yes" e "no" come valori. Il valore predefinito è "no", il quale indica che il certificato server verrà convalidato. |
UID |
DBPROP_AUTH_USERID |
Nome dell'account di accesso di SQL Server. |
UseProcForPrepare |
SSPROP_INIT_USEPROCFORPREP |
Questa parola chiave è deprecata e la relativa impostazione viene ignorata dal provider OLE DB di SQL Server Native Client. |
WSID |
SSPROP_INIT_WSID |
Identificatore della workstation. |
Le stringhe di connessione utilizzate nelle applicazioni OLE DB che utilizzano 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 utilizzate le parentesi graffe ({}) come virgolette e per Application Name vengono utilizzate le virgolette semplici (') o doppie ("). Solo per le proprietà delle stringhe è possibile utilizzare le virgolette. Se si tenta di utilizzare le virgolette con una proprietà integer o enumerata, verrà generato un errore "Stringa di connessione non conforme alla specifica OLE DB".
È consigliabile racchiudere i valori di attributo tra virgolette semplici o doppie per evitare i problemi determinati dalla presenza di caratteri non alfanumerici nei valori. Se raddoppiato, il carattere virgoletta può essere visualizzato anche per i valori.
Uno spazio dopo il segno = in una parola chiave di una stringa di connessione verrà interpretato come valore letterale, anche se il valore è racchiuso fra virgolette.
Se una stringa di connessione presenta più di una delle proprietà seguenti, verrà utilizzato il valore dell'ultima proprietà.
Nella tabella seguente vengono descritte le parole chiave che possono essere utilizzate con IDataInitialize::GetDataSource:
Parola chiave |
Proprietà di inizializzazione |
Descrizione |
---|---|---|
Application Name |
SSPROP_INIT_APPNAME |
Stringa che identifica l'applicazione. |
Auto Translate |
SSPROP_INIT_AUTOTRANSLATE |
Sinonimo di "AutoTranslate". |
AutoTranslate |
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. |
Current Language |
SSPROPT_INIT_CURRENTLANGUAGE |
Nome della lingua di SQL Server. |
Data Source |
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 ulteriori informazioni sulla sintassi valida per gli indirizzi, vedere la descrizione della parola chiave ODBC Server, più avanti in questo argomento. |
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. |
Failover Partner |
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. In presenza di una stringa vuota, SQL Server Native Client utilizza il nome SPN predefinito generato dal provider. |
Initial Catalog |
DBPROP_INIT_CATALOG |
Nome del database. |
Initial File Name |
SSPROP_INIT_FILENAME |
Nome del file primario, incluso il nome completo del percorso, di un database collegabile. Per utilizzare 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 utilizza il database collegato come impostazione predefinita per la connessione. |
Integrated Security |
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 se il server è SQL Server 2005 o SQL Server 2008. I valori riconosciuti sono "true" e "false". Il valore predefinito è "false". |
Network Address |
SSPROP_INIT_NETWORKADDRESS |
Indirizzo di rete di un'istanza di SQL Server nell'organizzazione. Per ulteriori informazioni sulla sintassi valida per gli indirizzi, vedere la descrizione della parola chiave ODBC Address, più avanti in questo argomento. |
Network Library |
SSPROP_INIT_NETWORKLIBRARY |
Libreria di rete utilizzata per stabilire una connessione a un'istanza di SQL Server nell'organizzazione. |
Packet Size |
SSPROP_INIT_PACKETSIZE |
Dimensioni del pacchetto di rete. Il valore predefinito è 0, a indicare che il server eseguirà la configurazione delle dimensioni del pacchetto in base all'impostazione di sp_configure 'network packet size'. |
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 impostata su "false", l'oggetto origine dati non è in grado di rendere persistenti le informazioni di autenticazione riservate |
Provider |
|
Per SQL Server Native Client, deve essere "SQLNCLI10". |
Server SPN |
SSPROP_INIT_SERVERSPN |
Nome SPN del server. Il valore predefinito è una stringa vuota. In presenza di una stringa vuota, SQL Server Native Client utilizza il nome SPN predefinito generato dal provider. |
Trust Server Certificate |
SSPROP_INIT_TRUST_SERVER_CERTIFICATE |
Accetta le stringhe "true" e "false" come valori. Il valore predefinito è "false", il quale indica che il certificato server verrà convalidato. |
Use Encryption for Data |
SSPROP_INIT_ENCRYPT |
Specifica se i dati devono essere crittografati prima del relativo invio in rete. I valori possibili sono "true" e "false". Il valore predefinito è "false". |
User ID |
DBPROP_AUTH_USERID |
Nome dell'account di accesso di SQL Server. |
Workstation ID |
SSPROP_INIT_WSID |
Identificatore della workstation. |
Nota Nella stringa di connessione la proprietà "Vecchia 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 il driver ODBC
Le applicazioni ODBC utilizzano stringhe di connessione come parametri delle funzioni SQLDriverConnect e SQLBrowseConnect.
Le stringhe di connessione utilizzate da ODBC 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 racchiudere i valori di attributo tra parentesi graffe per evitare i problemi determinati dalla presenza di caratteri non alfanumerici nei valori di attributo. Poiché si suppone che la prima parentesi graffa di chiusura termini il valore, l'uso di tali parentesi nei valori non è consentito.
Nella tabella seguente vengono descritte le parole chiave che possono essere utilizzate con una stringa di connessione ODBC.
Parola chiave |
Descrizione |
---|---|
Addr |
Sinonimo di "Address". |
Address |
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 ODBC quando si utilizza SQL Server Native Client. 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 (Shared Memory) o np (Named Pipes). Per ulteriori informazioni sui protocolli, vedere Scelta di un protocollo di rete. Se non viene specificato né protocol né Network, in SQL Server Native Client viene utilizzato l'ordine dei protocolli specificato in Gestione configurazione SQL Server. port indica la porta a cui connettersi nel server specificato. Per impostazione predefinita, in SQL Server viene utilizzata la porta 1433. Per ulteriori informazioni sui protocolli, vedere Scelta di un protocollo di rete. |
AnsiNPW |
Se l'opzione è impostata su "yes", il driver utilizza i comportamenti definiti da ANSI per la gestione dei confronti NULL, del riempimento dei dati di tipo carattere, degli avvisi e della concatenazione NULL. Se impostata su "no", i comportamenti definiti da ANSI non vengono esposti. Per ulteriori informazioni sui comportamenti ANSI NPW, vedere Effetti delle opzioni ISO. |
APP |
Nome dell'applicazione che chiama SQLDriverConnect (facoltativo). Se specificato, questo valore viene memorizzato nella colonna program_name di master.dbo.sysprocesses e viene restituito da sp_who e dalle funzioni APP_NAME. |
AttachDBFileName |
Nome del file primario di un database collegabile. Includere il percorso completo e utilizzare la sequenza di escape dei caratteri \ se si utilizza una variabile di tipo stringa di caratteri C: AttachDBFileName=c:\\MyFolder\\MyDB.mdf Questo database viene collegato e diventa il database predefinito per la connessione. Per utilizzare AttachDBFileName è necessario specificare anche il nome del database nel parametro DATABASE di SQLDriverConnect o nell'attributo di connessione SQL_COPT_CURRENT_CATALOG. Se il database è stato collegato in precedenza, SQL Server non lo ricollega e utilizza il database collegato come impostazione predefinita per la connessione. |
AutoTranslate |
Se impostata su "yes", le stringhe di caratteri ANSI inviate tra il client e il server vengono convertite in Unicode per ridurre al minimo i problemi di corrispondenza dei caratteri estesi tra le tabelle codici sul client e sul server. I dati SQL_C_CHAR del client inviati a una colonna, un parametro o una variabile char, varchar o text di SQL Server vengono convertiti da caratteri in Unicode utilizzando la tabella codici ANSI (ACP) del client e quindi da Unicode in caratteri utilizzando l'ACP del server. I dati char, varchar o text di SQL Server inviati a una variabile SQL_C_CHAR del client vengono convertiti da caratteri in Unicode utilizzando l'ACP del server e quindi da Unicode in caratteri utilizzando l'ACP del client. Queste conversioni vengono eseguite sul client dal driver ODBC di SQL Server Native Client e richiedono che sul client sia disponibile la stessa tabella codici ANSI (ACP) utilizzata sul server. Queste impostazioni non influiscono sulle conversioni eseguite per i trasferimenti seguenti:
Se impostata su "no", la conversione dei caratteri non viene eseguita. Il driver ODBC di SQL Server Native Client non converte i dati SQL_C_CHAR dei caratteri ANSI del client inviati alle variabili, ai parametri o alle colonne di tipo char, varchar o text sul server. Per i dati di tipo char, varchar o text inviati dal server alle variabili SQL_C_CHAR sul client non viene eseguita alcuna conversione. Se il client e SQL Server utilizzano ACP differenti, i caratteri estesi potrebbero essere interpretati in modo errato. |
Database |
Nome del database SQL Server predefinito per la connessione. Se non si specifica Database, viene utilizzato il database definito per l'accesso. Il database predefinito dell'origine dati ODBC esegue l'override del database predefinito specificato per l'accesso. Il database deve essere un database esistente, a meno che non si specifichi anche AttachDBFileName. In questo caso viene collegato il file primario al quale viene fatto riferimento, con il nome di database specificato da Database. |
Driver |
Nome del driver restituito da SQLDrivers. Il valore della parola chiave per il driver ODBC di SQL Server Native Client è "{SQL Server Native Client 10.0}". La parola chiave Server è necessaria se viene specificato Driver e se DriverCompletion è impostato su SQL_DRIVER_NOPROMPT. Per ulteriori informazioni sui nomi di driver, vedere Utilizzo dei file di intestazione e della libreria di SQL Server Native Client. |
DSN |
Nome di un'origine dati di sistema o di un utente ODBC esistente. Questa parola chiave ha la precedenza su qualsiasi valore specificato nelle parole chiave Server, Network e Address. |
Encrypt |
Specifica se i dati devono essere crittografati prima del relativo invio in rete. I valori possibili sono "yes" e "no". Il valore predefinito è "no". |
Fallback |
Questa parola chiave è deprecata e la relativa impostazione viene ignorata dal driver ODBC di SQL Server Native Client. |
Failover_Partner |
Nome del server partner di failover da utilizzare se non è possibile stabilire una connessione al server primario. |
FailoverPartnerSPN |
Nome SPN del partner di failover. Il valore predefinito è una stringa vuota. In presenza di una stringa vuota, SQL Server Native Client utilizza il nome SPN predefinito generato dal driver. |
FileDSN |
Nome di un'origine dati dei file ODBC esistente. |
Language |
Nome della lingua di SQL Server (facoltativo). SQL Server può memorizzare messaggi per più lingue in sysmessages. In caso di connessione a un SQL Server con più lingue, Language specifica il set di messaggi utilizzato per la connessione. |
MARS_Connection |
Abilita o disabilita MARS (Multiple Active Result Sets) nella connessione se il server è SQL Server 2005 o SQL Server 2008. I valori riconosciuti sono "yes" e "no". Il valore predefinito è "no". |
Net |
Sinonimo di "Network". |
Network |
I valori validi sono dbnmpntw (Named Pipes) e dbmssocn (TCP/IP). Per ulteriori informazioni sui protocolli di rete, vedere Scelta di un protocollo di rete. Non è possibile specificare sia un valore per la parola chiave Network, sia un prefisso di protocollo nella parola chiave Server. |
PWD |
Password per l'account di accesso di SQL Server specificato nel parametro UID. Non è necessario specificare la parola chiave PWD se l'account di accesso ha una password NULL o quando si utilizza l'autenticazione di Windows (Trusted_Connection = yes). |
QueryLog_On |
Se impostata su "yes", la registrazione dei dati di query con esecuzione prolungata viene abilitata per la connessione. Se impostata su "no", i dati di query con esecuzione prolungata non vengono registrati. |
QueryLogFile |
Nome e percorso completo di un file da utilizzare per registrare dati nelle query con esecuzione prolungata. |
QueryLogTime |
Stringa di cifre che specifica la soglia (in millisecondi) per la registrazione delle query con esecuzione prolungata. Tutte le query che non ottengono una risposta nell'intervallo di tempo specificato vengono scritte nel file di log delle query con esecuzione prolungata. |
QuotedId |
Se impostata su "yes", QUOTED_IDENTIFIERS viene impostata su ON per la connessione e SQL Server utilizza le regole ISO relative all'uso delle virgolette nelle istruzioni SQL. Se impostata su "no", QUOTED_IDENTIFIERS viene impostata su OFF per la connessione e SQL Server segue le regole Transact-SQL legacy relative all'uso delle virgolette nelle istruzioni SQL. Per ulteriori informazioni, vedere Effetti delle opzioni ISO. |
Regional |
Se impostata su "yes", il driver ODBC di SQL Server Native Client utilizza le impostazioni client per la conversione dei dati di valuta, data e ora in dati di tipo carattere. La conversione viene eseguita in una sola direzione. Il driver non riconosce i formati standard non ODBC per le stringhe di data o i valori di valuta all'interno, ad esempio, di un parametro utilizzato in un'istruzione INSERT o UPDATE. Se impostata su "no", il driver utilizza le stringhe standard ODBC per rappresentare i dati di valuta, data e ora convertiti in dati di tipo carattere. |
SaveFile |
Nome di un file di origine dati ODBC nel quale vengono salvati gli attributi della connessione corrente se la connessione riesce. |
Server |
Nome di un'istanza di SQL Server. Il valore deve corrispondere al nome di un server in rete, a un indirizzo IP o al nome di un alias di Gestione configurazione SQL Server. La parola chiave Address ha la precedenza sulla parola chiave Server. È possibile connettersi all'istanza predefinita nel server locale specificando uno degli elementi seguenti:
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=[protocol:]Server[,port] protocol può essere tcp (TCP/IP), lpc (Shared Memory) o np (Named Pipes). Per ulteriori informazioni sui protocolli, vedere Scelta di un protocollo di rete. Nell'esempio seguente viene illustrato come specificare una named pipe:
Questa riga specifica un protocollo Named Pipes, 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 viene specificato né protocol né Network, in SQL Server Native Client viene utilizzato l'ordine dei protocolli specificato in Gestione configurazione SQL Server. port indica la porta a cui connettersi nel server specificato. Per impostazione predefinita, in SQL Server viene utilizzata la porta 1433. Gli spazi vengono ignorati all'inizio del valore passato a Server nelle stringhe di connessione ODBC quando si utilizza SQL Server Native Client. |
ServerSPN |
Nome SPN del server. Il valore predefinito è una stringa vuota. In presenza di una stringa vuota, SQL Server Native Client utilizza il nome SPN predefinito generato dal driver. |
StatsLog_On |
Se impostata su "yes", abilita l'acquisizione dei dati relativi alle prestazioni del driver ODBC di SQL Server Native Client. Se impostata su "no", i dati relativi alle prestazioni del driver ODBC di SQL Server Native Client non sono disponibili nella connessione. |
StatsLogFile |
Nome e percorso completo di un file utilizzato per registrare le statistiche sulle prestazioni del driver ODBC di SQL Server Native Client. |
Trusted_Connection |
Se impostata su "yes", indica al driver ODBC di SQL Server Native Client di utilizzare la Modalità di autenticazione di Windows per la convalida dell'accesso. In caso contrario, indica al driver ODBC di SQL Server Native Client di utilizzare un nome utente e una password di SQL Server per la convalida dell'accesso e richiede la specifica delle parole chiave UID e PWD. |
TrustServerCertificate |
Se utilizzata con Encrypt, abilita la crittografia tramite un certificato server autofirmato. |
UID |
Account di accesso di SQL Server valido. Quando si utilizza l'autenticazione di Windows non è necessario specificare l'UID. |
UseProcForPrepare |
Questa parola chiave è deprecata e la relativa impostazione viene ignorata dal driver ODBC di SQL Server Native Client. |
WSID |
ID della workstation. In genere, si tratta del nome di rete del computer nel quale risiede l'applicazione (facoltativo). Se specificato, questo valore viene memorizzato nella colonna hostname di master.dbo.sysprocesses e restituito da sp_who e dalla funzione HOST_NAME. |
Nota
Ai dati di tipo valuta, numerico e data vengono applicate le impostazioni di conversione internazionali. L'impostazione di conversione è applicabile solo alla conversione di output ed è visibile solo quando i valori di valuta, data, ora o numerici vengono convertiti in stringhe di caratteri.
Il driver ODBC di SQL Server Native Client utilizza le impostazioni locali del Registro di sistema per l'utente corrente. Il driver non rispetta le impostazioni locali correnti del thread se l'applicazione le imposta dopo la connessione, chiamando ad esempio SetThreadLocale.
La modifica del comportamento internazionale di un'origine dati può generare un errore nell'applicazione. Un'applicazione che analizza le stringhe relative alla data e ne prevede la visualizzazione in base a quanto definito da ODBC, potrebbe essere influenzata negativamente dalla modifica di questo valore.
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 utilizzate dal metodo IDBInitialize::Initialize OLE DB ma solo per le proprietà che non dispongono di un valore predefinito. Se un'applicazione utilizza sia le parole chiave ADO che le parole chiave IDBInitialize::Initialize nella stringa di inizializzazione, verrà utilizzata l'impostazione della parola chiave ADO. Nelle applicazioni è consigliabile utilizzare solo le 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 racchiudere i valori di attributo tra virgolette doppie per evitare i problemi determinati dalla presenza di caratteri non alfanumerici nei valori. I valori 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 |
---|---|---|
Application Name |
SSPROP_INIT_APPNAME |
Stringa che identifica l'applicazione. |
Auto Translate |
SSPROP_INIT_AUTOTRANSLATE |
Sinonimo di "AutoTranslate". |
AutoTranslate |
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. |
Current Language |
SSPROPT_INIT_CURRENTLANGUAGE |
Nome della lingua di SQL Server. |
Data Source |
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 ulteriori informazioni sulla sintassi valida per gli indirizzi, vedere la descrizione della parola chiave ODBC Server in questo argomento. |
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. |
Failover Partner |
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. In presenza di una stringa vuota, SQL Server Native Client utilizza il nome SPN predefinito generato dal provider. |
Initial Catalog |
DBPROP_INIT_CATALOG |
Nome del database. |
Initial File Name |
SSPROP_INIT_FILENAME |
Nome del file primario, incluso il nome completo del percorso, di un database collegabile. Per utilizzare 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 utilizza il database collegato come impostazione predefinita per la connessione. |
Integrated Security |
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 se il server è SQL Server 2005 o versione successiva. I valori riconosciuti sono "true" e "false". Il valore predefinito è "false". |
Network Address |
SSPROP_INIT_NETWORKADDRESS |
Indirizzo di rete di un'istanza di SQL Server nell'organizzazione. Per ulteriori informazioni sulla sintassi valida per gli indirizzi, vedere la descrizione della parola chiave ODBC Address in questo argomento. |
Network Library |
SSPROP_INIT_NETWORKLIBRARY |
Libreria di rete utilizzata per stabilire una connessione a un'istanza di SQL Server nell'organizzazione. |
Packet Size |
SSPROP_INIT_PACKETSIZE |
Dimensioni del pacchetto di rete. Il valore predefinito è 0, a indicare che il server eseguirà la configurazione delle dimensioni del pacchetto in base all'impostazione di sp_configure 'network packet size'. |
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 l'opzione è impostata su "false", l'oggetto origine dati non è in grado di rendere persistenti le informazioni di autenticazione riservate. |
Provider |
|
Per SQL Server Native Client, deve essere "SQLNCLI10". |
Server SPN |
SSPROP_INIT_SERVERSPN |
Nome SPN del server. Il valore predefinito è una stringa vuota. In presenza di una stringa vuota, SQL Server Native Client utilizza il nome SPN predefinito generato dal provider. |
Trust Server Certificate |
SSPROP_INIT_TRUST_SERVER_CERTIFICATE |
Accetta le stringhe "true" e "false" come valori. Il valore predefinito è "false", il quale indica che il certificato server verrà convalidato. |
Use Encryption for Data |
SSPROP_INIT_ENCRYPT |
Specifica se i dati devono essere crittografati prima del relativo invio in rete. I valori possibili sono "true" e "false". Il valore predefinito è "false". |
User ID |
DBPROP_AUTH_USERID |
Nome dell'account di accesso di SQL Server. |
Workstation ID |
SSPROP_INIT_WSID |
Identificatore della workstation. |
Nota Nella stringa di connessione la proprietà "Vecchia password" imposta SSPROP_AUTH_OLD_PASSWORD, ovvero la password corrente (probabilmente scaduta) che non è disponibile tramite una proprietà della stringa del provider.