Condividi tramite


SQLSetConnectAttr

Il driver ODBC di SQL Server Native Client ignora l'impostazione di SQL_ATTR_CONNECTION_TIMEOUT.

SQL_ATTR_TRANSLATE_LIB viene ignorato; non è supportata l'impostazione di un'altra libreria di traduzione. Per consentire alle applicazioni di essere facilmente convertite per l'uso di un driver ODBC Microsoft per SQL Server, qualsiasi valore impostato con SQL_ATTR_TRANSLATE_LIB verrà copiato in e all'esterno di un buffer in Gestione driver.

Il driver ODBC di SQL Server Native Client implementa l'isolamento delle transazioni di lettura ripetibile come serializzabile.

SQL Server 2005 ha introdotto il supporto per un nuovo attributo di isolamento delle transazioni, SQL_COPT_SS_TXN_ISOLATION. L'impostazione di SQL_COPT_SS_TXN_ISOLATION su SQL_TXN_SS_SNAPSHOT indica che la transazione verrà eseguita sotto il livello di isolamento dello snapshot.

Annotazioni

SQL_ATTR_TXN_ISOLATION può essere usato per impostare tutti gli altri livelli di isolamento ad eccezione di SQL_TXN_SS_SNAPSHOT. Se si vuole usare l'isolamento dello snapshot, è necessario impostare SQL_TXN_SS_SNAPSHOT tramite SQL_COPT_SS_TXN_ISOLATION. È tuttavia possibile recuperare il livello di isolamento usando SQL_ATTR_TXN_ISOLATION o SQL_COPT_SS_TXN_ISOLATION.

L'innalzamento di livello degli attributi di istruzione ODBC agli attributi di connessione può avere conseguenze impreviste. Gli attributi di istruzione che richiedono cursori del server per l'elaborazione del set di risultati possono essere promossi alla connessione. Ad esempio, l'impostazione dell'attributo dell'istruzione ODBC SQL_ATTR_CONCURRENCY su un valore più restrittivo rispetto al SQL_CONCUR_READ_ONLY predefinito indirizza il driver all'uso di cursori dinamici per tutte le istruzioni inviate nella connessione. L'esecuzione di una funzione di catalogo ODBC in un'istruzione sulla connessione restituisce SQL_SUCCESS_WITH_INFO e un record di diagnostica che indica che il comportamento del cursore è stato modificato in sola lettura. Il tentativo di eseguire un'istruzione SELECT Transact-SQL contenente una clausola COMPUTE nella stessa connessione ha esito negativo.

Il driver ODBC di SQL Server Native Client supporta diverse estensioni specifiche del driver per gli attributi di connessione ODBC definiti in sqlncli.h. Il driver ODBC di SQL Server Native Client potrebbe richiedere l'impostazione dell'attributo prima della connessione oppure può ignorare l'attributo se è già impostato. Nella tabella seguente sono elencate le restrizioni.

Attributo di SQL Server Impostare prima o dopo la connessione al server
SQL_COPT_SS_ANSI_NPW Prima di
SQL_COPT_SS_APPLICATION_INTENT Prima di
SQL_COPT_SS_ATTACHDBFILENAME Prima di
SQL_COPT_SS_BCP Prima di
SQL_COPT_SS_BROWSE_CONNECT Prima di
SQL_COPT_SS_BROWSE_SERVER Prima di
SQL_COPT_SS_CONCAT_NULL Prima di
SQL_COPT_SS_CONNECTION_DEAD Dopo
SQL_COPT_SS_ENCRYPT Prima di
SQL_COPT_SS_ENLIST_IN_DTC Dopo
SQL_COPT_SS_ENLIST_IN_XA Dopo
SQL_COPT_SS_FALLBACK_CONNECT Prima di
SQL_COPT_SS_FAILOVER_PARTNER Prima di
SQL_COPT_SS_INTEGRATED_SECURITY Prima di
SQL_COPT_SS_MARS_ENABLED Prima di
SQL_COPT_SS_MULTISUBMIT_FAILOVER Prima di
SQL_COPT_SS_OLDPWD Prima di
SQL_COPT_SS_PERF_DATA Dopo
SQL_COPT_SS_PERF_DATA_LOG Dopo
SQL_COPT_SS_PERF_DATA_LOG_NOW Dopo
SQL_COPT_SS_PERF_QUERY Dopo
SQL_COPT_SS_PERF_QUERY_INTERVAL Dopo
SQL_COPT_SS_PERF_QUERY_LOG Dopo
SQL_COPT_SS_PRESERVE_CURSORS Prima di
SQL_COPT_SS_QUOTED_IDENT O
SQL_COPT_SS_TRANSLATE O
SQL_COPT_SS_TRUST_SERVER_CERTIFICATE Prima di
SQL_COPT_SS_TXN_ISOLATION O
SQL_COPT_SS_USE_PROC_FOR_PREP O
SQL_COPT_SS_USER_DATA O
SQL_COPT_SS_WARN_ON_CP_ERROR Prima di

L'uso di un attributo di pre-connessione e del comando Transact-SQL equivalente per la stessa sessione, database o stato di SQL Server può produrre un comportamento imprevisto. Ad esempio:

SQLSetConnectAttr(SQL_COPT_SS_QUOTED_IDENT, SQL_QI_ON) // turn ON via attribute  
SQLDriverConnect(...);  
SQLExecDirect("SET QUOTED_IDENTIFIER OFF") // turn OFF via Transact-SQL  
SQLSetConnectAttr(SQL_ATTR_CURRENT_CATALOG, ...) // restores to pre-connect attribute value  

SQL_COPT_SS_ANSI_NPW

SQL_COPT_SS_ANSI_NPW abilita o disabilita l'uso della gestione ISO di NULL nei confronti e nella concatenazione, nella spaziatura interna del tipo di dati carattere e negli avvisi. Per altre informazioni, vedere SET ANSI_NULLS, SET ANSI_PADDING, SET ANSI_WARNINGS e SET CONCAT_NULL_YIELDS_NULL.

Valore Descrizione
SQL_AD_ON Predefinito La connessione usa il comportamento predefinito ANSI per la gestione di confronti NULL, spaziatura interna, avvisi e concatenazioni NULL.
SQL_AD_OFF La connessione usa la gestione definita da SQL Server di VALORI NULL, spaziatura interna del tipo di dati carattere e avvisi.

Se si usa il pool di connessioni, SQL_COPT_SS_ANSI_NPW deve essere impostato nella stringa di connessione anziché con SQLSetConnectAttr. Dopo aver effettuato una connessione, qualsiasi tentativo di modificare questo attributo avrà esito negativo in modo invisibile all'utente quando viene usato il pool di connessioni.

SQL_COPT_SS_APPLICATION_INTENT

Dichiara il tipo di carico di lavoro dell'applicazione in caso di connessione a un server. I valori possibili sono Readonly e ReadWrite. Per esempio:

SQLSetConnectAttr(hdbc, SQL_COPT_SS_APPLICATION_INTENT, TEXT("Readonly"), SQL_NTS)  

Il valore predefinito è ReadWrite. Per altre informazioni sul supporto di SQL Server Native Client per i gruppi di disponibilità AlwaysOn, vedere Supporto di SQL Server Native Client per disponibilità elevata, ripristino di emergenza.

SQL_COPT_SS_ATTACHDBFILENAME

SQL_COPT_SS_ATTACHDBFILENAME specifica il nome del file primario di un database collegabile. Questo database viene collegato e diventa il database predefinito per la connessione. Per usare SQL_COPT_SS_ATTACHDBFILENAME è necessario specificare il nome del database come valore dell'attributo di connessione SQL_ATTR_CURRENT_CATALOG o nel parametro DATABASE = di sqlDriverConnect. Se il database è stato collegato in precedenza, SQL Server non lo ricollega.

Valore Descrizione
SQLPOINTER a una stringa di caratteri La stringa contiene il nome del file primario da collegare al database. Includere il nome completo del percorso del file.

SQL_COPT_SS_BCP

SQL_COPT_SS_BCP abilita le funzioni di copia bulk in una connessione. Per altre informazioni, vedere Funzioni di copia bulk.

Valore Descrizione
SQL_BCP_OFF Predefinito Le funzioni di copia bulk non sono disponibili nella connessione.
SQL_BCP_ON Le funzioni di copia bulk sono disponibili nella connessione.

SQL_COPT_SS_BROWSE_CONNECT

Questo attributo viene usato per personalizzare il set di risultati restituito da SQLBrowseConnect. SQL_COPT_SS_BROWSE_CONNECT abilita o disabilita la restituzione di informazioni aggiuntive da un'istanza enumerata di SQL Server. Può includere informazioni quali se il server è un cluster, nomi di istanze diverse e il numero di versione.

Valore Descrizione
SQL_MORE_INFO_NO Predefinito Restituisce un elenco di server.
SQL_MORE_INFO_YES SQLBrowseConnect restituisce una stringa estesa di proprietà del server.

SQL_COPT_SS_BROWSE_SERVER

Questo attributo viene usato per personalizzare il set di risultati restituito da SQLBrowseConnect. SQL_COPT_SS_BROWSE_SERVER specifica il nome del server per il quale SQLBrowseConnect restituisce le informazioni.

Valore Descrizione
nomecomputer SQLBrowseConnect restituisce un elenco di istanze di SQL Server nel computer specificato. Le doppie barre rovesciata (\\) non devono essere usate per il nome del server( ad esempio, anziché \\MyServer, è consigliabile usare MyServer).
NULLO Predefinito SQLBrowseConnect restituisce informazioni per tutti i server nel dominio.

SQL_COPT_SS_CONCAT_NULL

SQL_COPT_SS_CONCAT_NULL abilita o disabilita l'uso della gestione ISO di NULL durante la concatenazione di stringhe. Per altre informazioni, vedere SET CONCAT_NULL_YIELDS_NULL.

Valore Descrizione
SQL_CN_ON Predefinito La connessione usa il comportamento predefinito ISO per la gestione dei valori NULL durante la concatenazione di stringhe.
SQL_CN_OFF La connessione usa il comportamento definito da SQL Server per la gestione dei valori NULL durante la concatenazione di stringhe.

SQL_COPT_SS_ENCRYPT

Controlla la crittografia per una connessione.

La crittografia usa il certificato nel server. Deve essere verificato da un'autorità di certificazione, a meno che l'attributo di connessione SQL_COPT_SS_TRUST_SERVER_CERTIFICATE sia impostato su SQL_TRUST_SERVER_CERTIFICATE_YES o la stringa di connessione contenga "TrustServerCertificate=yes". Se una di queste condizioni è vera, è possibile usare un certificato generato e firmato dal server per crittografare la connessione se non è presente alcun certificato nel server.

Valore Descrizione
SQL_EN_ON La connessione verrà crittografata.
SQL_EN_OFF La connessione non verrà crittografata. Si tratta dell'impostazione predefinita.

SQL_COPT_SS_ENLIST_IN_DTC

Il client chiama il metodo MICROSOFT Distributed Transaction Coordinator (MS DTC) OLE DB ITransactionDispenser::BeginTransaction per avviare una transazione MS DTC e creare un oggetto transazione MS DTC che rappresenta la transazione. L'applicazione chiama SQLSetConnectAttr quindi con l'opzione SQL_COPT_SS_ENLIST_IN_DTC per associare l'oggetto transazione alla connessione ODBC. Tutte le attività di database correlate verranno eseguite con la protezione della transazione MS DTC. L'applicazione chiama SQLSetConnectAttr con SQL_DTC_DONE per terminare l'associazione DTC della connessione.

Valore Descrizione
Oggetto DTC* Oggetto transazione OLE MS DTC che specifica la transazione da esportare in SQL Server.
SQL_DTC_DONE Delimita la fine di una transazione DTC.

SQL_COPT_SS_ENLIST_IN_XA

Per avviare una transazione XA con un processore di transazioni (TP) conforme a XA, il client chiama la funzione tx_begin open group. L'applicazione chiama SQLSetConnectAttr quindi con un parametro SQL_COPT_SS_ENLIST_IN_XA di TRUE per associare la transazione XA alla connessione ODBC. Tutte le attività di database correlate verranno eseguite con la protezione della transazione XA. Per terminare un'associazione XA con una connessione ODBC, il client deve chiamare SQLSetConnectAttr con un parametro SQL_COPT_SS_ENLIST_IN_XA false. Per altre informazioni, vedere la documentazione di Microsoft Distributed Transaction Coordinator.

SQL_COPT_SS_FALLBACK_CONNECT

Questo attributo non è più supportato.

SQL_COPT_SS_FAILOVER_PARTNER

Usato per specificare o recuperare il nome del partner di failover usato per il mirroring del database in SQL Server ed è una stringa di caratteri con terminazione Null che deve essere impostata prima che venga stabilita la connessione a SQL Server.

Dopo aver stabilito la connessione, l'applicazione può eseguire query su questo attributo usando SQLGetConnectAttr per determinare l'identità del partner di failover. Se il server primario non dispone di partner di failover, questa proprietà restituirà una stringa vuota. Ciò consente a un'applicazione intelligente di memorizzare nella cache il server di backup determinato più di recente, ma tali applicazioni devono tenere presente che le informazioni vengono aggiornate solo quando la connessione viene stabilita per la prima volta o reimpostata, se in pool e possono diventare obsolete per le connessioni a lungo termine.

Per altre informazioni, vedere Uso del mirroring del database.

SQL_COPT_SS_INTEGRATED_SECURITY

SQL_COPT_SS_INTEGRATED_SECURITY forza l'uso dell'autenticazione di Windows per la convalida dell'accesso al server. Quando si usa l'autenticazione di Windows, il driver ignora i valori di identificatore utente e password forniti come parte dell'elaborazione SQLConnect, SQLDriverConnect o SQLBrowseConnect .

Valore Descrizione
SQL_IS_OFF Predefinito L'autenticazione di SQL Server viene usata per convalidare l'identificatore utente e la password nell'account di accesso.
SQL_IS_ON La modalità di autenticazione di Windows viene usata per convalidare i diritti di accesso di un utente a SQL Server.

SQL_COPT_SS_MARS_ENABLED

Questo attributo abilita o disabilita più set di risultati attivi (MARS). Per impostazione predefinita, MARS è disabilitato. Questo attributo deve essere impostato prima di stabilire una connessione a SQL Server. Dopo l'apertura della connessione SQL Server, MARS rimarrà abilitato o disabilitato per la durata della connessione.

Valore Descrizione
SQL_MARS_ENABLED_NO Predefinito Mars (Multiple Active Result Sets) è disabilitato.
SQL_MARS_ENABLED_YES MARS è abilitato.

Per altre informazioni su MARS, vedere Uso di più set di risultati attivi (MARS).

SQL_COPT_SS_MULTISUBNET_FAILOVER

Se l'applicazione si connette a un gruppo di disponibilità Dei gruppi di disponibilità AlwaysOn in subnet diverse, questa proprietà di connessione configura SQL Server Native Client per fornire un rilevamento e una connessione più rapidi al server attivo (attualmente). Per esempio:

SQLSetConnectAttr(hdbc, SQL_COPT_SS_MULTISUBMIT_FAILOVER, SQL_IS_ON, SQL_IS_INTEGER)  

Per altre informazioni sul supporto di SQL Server Native Client per i gruppi di disponibilità AlwaysOn, vedere Supporto di SQL Server Native Client per disponibilità elevata, ripristino di emergenza.

Valore Descrizione
SQL_IS_ON SQL Server Native Client offre una riconnessione più rapida in caso di failover.
SQL_IS_OFF SQL Server Native Client non fornirà una riconnessione più veloce se si verifica un failover.

SQL_COPT_SS_OLDPWD

La scadenza della password per l'autenticazione di SQL Server è stata introdotta in SQL Server 2005. L'attributo SQL_COPT_SS_OLDPWD è stato aggiunto per consentire al client di fornire sia la vecchia che la nuova password per la connessione. Quando questa proprietà è impostata, il provider non userà il pool di connessioni per la prima connessione o per le connessioni successive, poiché la stringa di connessione conterrà la "vecchia password" che è stata modificata.

Per altre informazioni, vedere Modifica delle password a livello di codice.

Valore Descrizione
SQL_COPT_SS_OLD_PASSWORD SQLPOINTER a una stringa di caratteri contenente la vecchia password. Questo valore è di sola scrittura e deve essere impostato prima della connessione al server.

SQL_COPT_SS_PERF_DATA

SQL_COPT_SS_PERF_DATA avvia o arresta la registrazione dei dati sulle prestazioni. Prima di avviare la registrazione dei dati, è necessario impostare il nome del file di log di dati. Vedere SQL_COPT_SS_PERF_DATA_LOG di seguito.

Valore Descrizione
SQL_PERF_START Avvia i dati sulle prestazioni di campionamento dei driver.
SQL_PERF_STOP Arresta i contatori dai dati delle prestazioni di campionamento.

Per altre informazioni, vedere SQLGetConnectAttr.

SQL_COPT_SS_PERF_DATA_LOG

SQL_COPT_SS_PERF_DATA_LOG assegna il nome del file di log usato per registrare i dati sulle prestazioni. Il nome del file di log è una stringa ANSI o Unicode con terminazione Null a seconda della compilazione dell'applicazione. L'argomento StringLength deve essere SQL_NTS.

SQL_COPT_SS_PERF_DATA_LOG_NOW

SQL_COPT_SS_PERF_DATA_LOG_NOW indica al driver di scrivere una voce di log delle statistiche su disco. L'argomento StringLength deve essere SQL_NTS.

SQL_COPT_SS_PERF_QUERY

SQL_COPT_SS_PERF_QUERY avvia o arresta la registrazione per le query con esecuzione prolungata. Prima di iniziare la registrazione, è necessario specificare il nome del file di log della query. L'applicazione può definire "a esecuzione prolungata" impostando l'intervallo per la registrazione.

Valore Descrizione
SQL_PERF_START Avvia la registrazione delle query a esecuzione prolungata.
SQL_PERF_STOP Arresta la registrazione delle query a esecuzione prolungata.

Per altre informazioni, vedere SQLGetConnectAttr.

SQL_COPT_SS_PERF_QUERY_INTERVAL

SQL_COPT_SS_PERF_QUERY_INTERVAL imposta la soglia di registrazione delle query in millisecondi. Le query che non vengono risolte entro la soglia vengono registrate nel file di log delle query a esecuzione prolungata. Non esiste alcun limite massimo per la soglia di query. Un valore soglia di query pari a zero causa la registrazione di tutte le query.

SQL_COPT_SS_PERF_QUERY_LOG

SQL_COPT_SS_PERF_QUERY_LOG assegna il nome di un file di log per la registrazione di dati di query con esecuzione prolungata. Il nome del file di log è una stringa ANSI o Unicode con terminazione Null a seconda della compilazione dell'applicazione. L'argomento StringLength deve essere SQL_NTS o la lunghezza della stringa in byte.

SQL_COPT_SS_PRESERVE_CURSORS

Questo attributo consente di eseguire query e impostare se la connessione manterrà o meno i cursori quando si esegue il commit/rollback di una transazione. L'impostazione è SQL_PC_ON o SQL_PC_OFF. Il valore predefinito è SQL_PC_OFF. Questa impostazione controlla se il driver chiuderà o meno i cursori quando si chiama SQLEndTran (o SQLTransact).

Valore Descrizione
SQL_PC_OFF Predefinito I cursori vengono chiusi quando viene eseguito il commit o il rollback della transazione tramite SQLEndTran.
SQL_PC_ON I cursori non vengono chiusi quando viene eseguito il commit o il rollback della transazione tramite SQLEndTran, tranne quando si usa un cursore statico o keyset in modalità asincrona. Se viene eseguito un rollback mentre il popolamento del cursore non è completo, il cursore viene chiuso.

SQL_COPT_SS_QUOTED_IDENT

SQL_COPT_SS_QUOTED_IDENT consente identificatori tra virgolette nelle istruzioni ODBC e Transact-SQL inviate nella connessione. Fornendo identificatori delimitati, il driver ODBC di SQL Server Native Client consente nomi di oggetto altrimenti non validi, ad esempio "Tabella personale", che contiene uno spazio nell'identificatore. Per altre informazioni, vedere SET QUOTED_IDENTIFIER.

Valore Descrizione
SQL_QI_OFF La connessione a SQL Server non consente identificatori tra virgolette in Transact-SQL inviato.
SQL_QI_ON Predefinito La connessione consente identificatori tra virgolette in Transact-SQL inviato.

SQL_COPT_SS_TRANSLATE

SQL_COPT_SS_TRANSLATE fa sì che il driver traduca i caratteri tra le tabelle codici client e server quando i dati MBCS vengono scambiati. L'attributo influisce solo sui dati archiviati nelle colonnechar, varchar e text di SQL Server.

Valore Descrizione
SQL_XL_OFF Il driver non converte i caratteri da una tabella codici a un'altra nei dati di tipo carattere scambiati tra il client e il server.
SQL_XL_ON Predefinito Il driver converte i caratteri da una tabella codici a un'altra in dati di tipo carattere scambiati tra il client e il server. Il driver configura automaticamente la conversione dei caratteri, determinando la tabella codici installata nel server e utilizzata dal client.

SQL_COPT_SS_TRUST_SERVER_CERTIFICATE

SQL_COPT_SS_TRUST_SERVER_CERTIFICATE fa sì che il driver abiliti o disabiliti la convalida del certificato quando si usa la crittografia. Questo attributo è un valore di lettura/scrittura, ma impostandolo dopo che è stata stabilita una connessione non ha alcun effetto.

Le applicazioni client possono eseguire query su questa proprietà dopo l'apertura di una connessione per determinare le impostazioni di crittografia e convalida effettive in uso.

Valore Descrizione
SQL_TRUST_SERVER_CERTIFICATE_NO Predefinito La crittografia senza convalida del certificato non è abilitata.
SQL_TRUST_SERVER_CERTIFICATE_YES La crittografia senza convalida del certificato è abilitata.

SQL_COPT_SS_TXN_ISOLATION

SQL_COPT_SS_TXN_ISOLATION imposta l'attributo di isolamento dello snapshot specifico di SQL Server. Non è possibile impostare l'isolamento dello snapshot usando SQL_ATTR_TXN_ISOLATION perché il valore è specifico di SQL Server. Tuttavia, può essere recuperato usando SQL_ATTR_TXN_ISOLATION o SQL_COPT_SS_TXN_ISOLATION.

Valore Descrizione
SQL_TXN_SS_SNAPSHOT Indica che da una transazione non è possibile visualizzare le modifiche apportate in altre transazioni e che non è possibile visualizzare modifiche anche durante la rieseguizione della query.

Per altre informazioni sull'isolamento dello snapshot, vedere Uso dell'isolamento dello snapshot.

SQL_COPT_SS_USE_PROC_FOR_PREP

Questo attributo non è più supportato.

SQL_COPT_SS_USER_DATA

SQL_COPT_SS_USER_DATA imposta il puntatore dati utente. I dati utente sono la memoria di proprietà del client registrata per ogni connessione.

Per altre informazioni, vedere SQLGetConnectAttr.

SQL_COPT_SS_WARN_ON_CP_ERROR

Questo attributo determina se viene visualizzato un avviso se si verifica una perdita di dati durante la conversione di una tabella codici. Questo vale solo per i dati provenienti dal server.

Valore Descrizione
SQL_WARN_YES Generare avvisi quando si verifica una perdita di dati durante la conversione della tabella codici.
SQL_WARN_NO (Impostazione predefinita) Non generare avvisi quando si verifica una perdita di dati durante la conversione della tabella codici.

Supporto di SQLSetConnectAttr per i nomi delle entità servizio (SPN)

SQLSetConnectAttr può essere usato per impostare il valore dei nuovi attributi di connessione SQL_COPT_SS_SERVER_SPN e SQL_COPT_SS_FAILOVER_PARTNER_SPN. Questi attributi non possono essere impostati quando una connessione è aperta; se si tenta di impostare questi attributi all'apertura di una connessione, viene restituito l'errore HY011 con il messaggio "Operazione non valida in questo momento". È anche possibile usare SQLSetConnectOption per impostare questi valori.

Per altre informazioni sui nomi SPN, vedere Service Principal Names (SPN) in Client Connections (ODBC).

SQL_COPT_SS_CONNECTION_DEAD

Si tratta di un attributo di sola lettura.

Per altre informazioni sulle SQL_COPT_SS_CONNECTION_DEAD, vedere SQLGetConnectAttr e Connessione a un'origine dati (ODBC).

Esempio

Questo esempio registra i dati sulle prestazioni.

SQLPERF*     pSQLPERF;  
SQLINTEGER   nValue;  
  
// See if you are already logging. SQLPERF* will be NULL if not.  
SQLGetConnectAttr(hDbc, SQL_COPT_SS_PERF_DATA, &pSQLPERF,  
    sizeof(SQLPERF*), &nValue);  
  
if (pSQLPERF == NULL)  
    {  
    // Set the performance log file name.  
    SQLSetConnectAttr(hDbc, SQL_COPT_SS_PERF_DATA_LOG,  
        (SQLPOINTER) "\\My LogDirectory\\MyServerLog.txt", SQL_NTS);  
  
    // Start logging...  
    SQLSetConnectAttr(hDbc, SQL_COPT_SS_PERF_DATA,  
        (SQLPOINTER) SQL_PERF_START, SQL_IS_INTEGER);  
    }  
else  
    {  
    // Take a snapshot now so that your performance statistics are discernible.  
    SQLSetConnectAttr(hDbc, SQL_COPT_SS_PERF_DATA_LOG_NOW, NULL, 0);  
    }  
  
    // ...perform some action...  
  
// ...take a performance data snapshot...  
SQLSetConnectAttr(hDbc, SQL_COPT_SS_PERF_DATA_LOG_NOW, NULL, 0);  
  
    // ...perform more actions...  
  
// ...take another snapshot...  
SQLSetConnectAttr(hDbc, SQL_COPT_SS_PERF_DATA_LOG_NOW, NULL, 0);  
  
// ...and disable logging.  
SQLSetConnectAttr(hDbc, SQL_COPT_SS_PERF_DATA,  
    (SQLPOINTER) SQL_PERF_STOP, SQL_IS_INTEGER);  
  
// Continue on...  

Vedere anche

Funzione SQLSetConnectAttr
Dettagli di implementazione dell'API ODBC
Funzioni di copia bulk
SET ANSI_NULLS (Transact-SQL)
SET ANSI_PADDING (Transact-SQL)
SET ANSI_WARNINGS (Transact-SQL)
SET CONCAT_NULL_YIELDS_NULL (Transact-SQL)
SET QUOTED_IDENTIFIER (Transact-SQL)
Funzione SQLPrepare
SQLGetInfo