SQLSetConnectAttr

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

SQL_ATTR_TRANSLATE_LIB viene inoltre ignorato. La specifica di un'altra libreria di conversione non è supportata. Per consentire alle applicazioni di utilizzare in modo semplice un driver Microsoft ODBC per SQL Server, qualsiasi valore impostato con SQL_ATTR_TRANSLATE_LIB verrà copiato all'interno e all'esterno di un buffer da Gestione driver.

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

In SQL Server 2005 è stato introdotto il supporto per un nuovo attributo di isolamento delle transazioni: SQL_COPT_SS_TXN_ISOLATION. Impostando SQL_COPT_SS_TXN_ISOLATION su SQL_TXN_SS_SNAPSHOT si indica che la transazione si verificherà con il livello di isolamento dello snapshot.

[!NOTA]

SQL_ATTR_TXN_ISOLATION può essere utilizzato per impostare tutti gli altri livelli di isolamento ad eccezione di SQL_TXN_SS_SNAPSHOT. Se si desidera utilizzare l'isolamento dello snapshot, è necessario impostare SQL_TXN_SS_SNAPSHOT tramite SQL_COPT_SS_TXN_ISOLATION. Tuttavia, è possibile recuperare il livello di isolamento tramite SQL_ATTR_TXN_ISOLATION oppure SQL_COPT_SS_TXN_ISOLATION.

La promozione di attributi di istruzione ODBC ad attributi di connessione può comportare conseguenze impreviste. Gli attributi di istruzione che richiedono cursori del server per l'elaborazione dei set di risultati possono essere promossi ad attributi di connessione. L'impostazione, ad esempio, dell'attributo di istruzione ODBC SQL_ATTR_CONCURRENCY su un valore più restrittivo del valore predefinito SQL_CONCUR_READ_ONLY indica al driver di utilizzare cursori dinamici per tutte le istruzioni eseguite nella connessione. L'esecuzione di una funzione di catalogo ODBC in un'istruzione nella connessione restituisce SQL_SUCCESS_WITH_INFO e un record di diagnostica indicante che il comportamento del cursore è stato modificato e impostato come di sola lettura. Un tentativo di esecuzione di un'istruzione Transact-SQL SELECT contenente una clausola COMPUTE nella stessa connessione avrà esito negativo.

Il driver ODBC di SQL Server Native Client supporta diverse estensioni specifiche del driver ad attributi di connessione ODBC definiti in sqlncli.h. Il driver ODBC di SQL Server Native Client può richiedere che l'attributo venga impostato prima della connessione o può ignorare l'attributo se è già impostato. Nella tabella seguente sono incluse le restrizioni.

Attributo di SQL Server

Impostazione prima o dopo la connessione al server

SQL_COPT_SS_ANSI_NPW

Prima

SQL_COPT_SS_ATTACHDBFILENAME

Prima

SQL_COPT_SS_BCP

Prima

SQL_COPT_SS_BROWSE_CONNECT

Prima

SQL_COPT_SS_BROWSE_SERVER

Prima

SQL_COPT_SS_CONCAT_NULL

Prima

SQL_COPT_SS_CONNECTION_DEAD

Dopo

SQL_COPT_SS_ENCRYPT

Prima

SQL_COPT_SS_ENLIST_IN_DTC

Dopo

SQL_COPT_SS_ENLIST_IN_XA

Dopo

SQL_COPT_SS_FALLBACK_CONNECT

Prima

SQL_COPT_SS_FAILOVER_PARTNER

Prima

SQL_COPT_SS_INTEGRATED_SECURITY

Prima

SQL_COPT_SS_MARS_ENABLED

Prima

SQL_COPT_SS_OLDPWD

Prima

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

SQL_COPT_SS_QUOTED_IDENT

Prima o dopo

SQL_COPT_SS_TRANSLATE

Prima o dopo

SQL_COPT_SS_TRUST_SERVER_CERTIFICATE

Prima

SQL_COPT_SS_TXN_ISOLATION

Prima o dopo

SQL_COPT_SS_USE_PROC_FOR_PREP

Prima o dopo

SQL_COPT_SS_USER_DATA

Prima o dopo

SQL_COPT_SS_WARN_ON_CP_ERROR

Prima

SQL_COPT_SS_ANSI_NPW

SQL_COPT_SS_ANSI_NPW abilita o disabilita l'utilizzo della gestione ISO di valori NULL nei confronti e nella concatenazione, nella spaziatura dei tipi di dati character e negli avvisi. Per ulteriori 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 utilizza il comportamento ANSI predefinito per la gestione dei confronti di valori NULL, per il riempimento, gli avvisi e le concatenazioni NULL.

SQL_AD_OFF

La connessione utilizza la gestione di valori NULL, la spaziatura dei tipi di dati character e gli avvisi definiti in SQL Server.

Se si utilizza un pool di connessioni, SQL_COPT_SS_ANSI_NPW deve essere impostato nella stringa di connessione anziché con SQLSetConnectAttr. Una volta stabilita una connessione, qualsiasi tentativo di modifica di questo attributo avrà esito negativo senza generare alcun avviso quando si utilizza un pool di connessioni.

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 utilizzare 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 una funzione SQLDriverConnect. Se il database è stato collegato in precedenza, non viene ricollegato in SQL Server.

Valore

Descrizione

SQLPOINTER a una stringa di caratteri

La stringa contiene il nome del file primario per il database da collegare. Includere il percorso completo del file.

SQL_COPT_SS_BCP

SQL_COPT_SS_BCP consente funzioni di copia bulk in una connessione. Per ulteriori 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 utilizzato 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. Tali informazioni possono includere l'indicazione che il server è o non è un cluster, i nomi di diverse istanze e il numero di versione.

Valore

Descrizione

SQL_MORE_INFO_NO

Predefinito. Restituisce un elenco di server.

SQL_MORE_INFO_YES

In SQL Server 7.0 SQLBrowseConnect restituisce un elenco di server. SQLBrowseConnect restituisce altrimenti una stringa estesa di proprietà del server.

SQL_COPT_SS_BROWSE_SERVER

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

Valore

Descrizione

nomecomputer

SQLBrowseConnect restituisce un elenco di istanze di SQL Server nel computer specificato. Per il nome del server non devono essere utilizzate le barre rovesciate doppie (\\). Ad esempio, invece di \\MyServer, deve essere utilizzato MyServer.

NULL

Predefinito. SQLBrowseConnect restituisce informazioni per tutti i server nel dominio.

SQL_COPT_SS_CONCAT_NULL

SQL_COPT_SS_CONCAT_NULL abilita o disabilita l'utilizzo della gestione ISO di valori NULL per il concatenamento delle stringhe. Per ulteriori informazioni, vedere SET CONCAT_NULL_YIELDS_NULL.

Valore

Descrizione

SQL_CN_ON

Predefinito. La connessione utilizza il comportamento predefinito ISO per la gestione di valori NULL per il concatenamento delle stringhe.

SQL_CN_OFF

La connessione utilizza il comportamento definito in SQL Server per la gestione dei valori NULL per il concatenamento delle stringhe.

SQL_COPT_SS_ENCRYPT

Controlla la crittografia per una connessione.

Per la crittografia viene utilizzato il certificato del server. Tale certificato deve essere verificato da un autorità di certificazione, a meno che l'attributo di connessione SQL_COPT_SS_TRUST_SERVER_CERTIFICATE venga impostato su SQL_TRUST_SERVER_CERTIFICATE_YES o la stringa di connessione contenga "TrustServerCertificate=yes". Se si verifica una di queste condizioni, un certificato generato e firmato dal server può essere utilizzato per crittografare la connessione se nel server non è presente alcun certificato.

Valore

Descrizione

SQL_EN_ON

La connessione verrà crittografata.

SQL_EN_OFF

La connessione non verrà crittografata. Questa è l'impostazione predefinita.

SQL_COPT_SS_ENLIST_IN_DTC

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

Valore

Descrizione

Oggetto DTC*

L'oggetto transazione OLE di 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 iniziare una transazione XA con un processore di transazioni conforme a XA, il client chiama la funzione Open Group tx_begin. L'applicazione chiama quindi SQLSetConnectAttr con un parametro SQL_COPT_SS_ENLIST_IN_DTC impostato su TRUE per associare la transazione XA alla connessione ODBC. Tutte le attività del database correlate verranno eseguite sotto 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 impostato su FALSE. Per ulteriori informazioni, vedere la documentazione di Microsoft Distributed Transaction Coordinator.

SQL_COPT_SS_FALLBACK_CONNECT

Questo attributo non è più supportato perché SQL Server Native Client non supporta la connessione a SQL Server 6.5.

SQL_COPT_SS_FAILOVER_PARTNER

Consente di specificare o recuperare il nome del partner di failover utilizzato per il mirroring del database in SQL Server. Si tratta di una stringa di caratteri con terminazione Null che deve essere impostata prima dell'esecuzione iniziale della connessione a SQL Server.

Una volta stabilita la connessione, l'applicazione può eseguire una query su questo attributo utilizzando SQLGetConnectAttr per determinare l'identità del partner di failover. Se il server primario non dispone di partner di failover, la proprietà restituirà una stringa vuota. In questo modo, un'applicazione smart può memorizzare nella cache il server di backup determinato più di recente, benché con tali applicazioni sia necessario tenere conto del fatto che le informazioni vengono aggiornate solo quando la connessione viene stabilita per la prima volta (o reimpostata, se in pool) e possono diventare obsolete nel caso di connessioni prolungate.

Per ulteriori informazioni, vedere Utilizzo del mirroring del database.

SQL_COPT_SS_INTEGRATED_SECURITY

SQL_COPT_SS_INTEGRATED_SECURITY forza l'utilizzo dell'autenticazione di Windows per la convalida dell'accesso in fase di connessione al server. Quando viene utilizzata l'autenticazione di Windows, il driver ignora i valori di ID utente e password forniti come parte dell'elaborazione di SQLConnect, SQLDriverConnect o SQLBrowseConnect.

Valore

Descrizione

SQL_IS_OFF

Predefinito. L'autenticazione di SQL Server viene utilizzata per convalidare ID utente e password al momento dell'accesso.

SQL_IS_ON

Viene utilizzata la modalità di autenticazione di Windows per convalidare i diritti di accesso di un utente a SQL Server.

SQL_COPT_SS_MARS_ENABLED

Questo attributo abilita o disabilita MARS (Multiple Active Result Set). Per impostazione predefinita, MARS è disabilitato. Questo attributo deve essere impostato prima di stabilire una connessione a SQL Server. Una volta aperta la connessione a SQL Server, il servizio MARS rimarrà abilitato o disabilitato per tutta la durata della connessione.

Valore

Descrizione

SQL_MARS_ENABLED_NO

Predefinito. MARS è disabilitato.

SQL_MARS_ENABLED_YES

MARS è abilitato.

Per ulteriori informazioni su MARS, vedere Utilizzo di MARS (Multiple Active Result Set).

SQL_COPT_SS_OLDPWD

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

Per ulteriori informazioni, vedere Modifica delle password a livello di programmazione.

Valore

Descrizione

SQL_COPT_SS_OLD_PASSWORD

SQLPOINTER a una stringa di caratteri contenente la password precedente. 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 interrompe la registrazione dei dati relativi alle prestazioni. Il nome del file di log deve essere impostato prima di avviare la registrazione dei dati. Vedere SQL_COPT_SS_PERF_DATA_LOG di seguito.

Valore

Descrizione

SQL_PERF_START

Avvia il driver che esegue il campionamento dei dati relativi alle prestazioni.

SQL_PERF_STOP

Interrompe il campionamento dei dati relativi alle prestazioni da parte dei contatori.

Per ulteriori informazioni, vedere SQLGetConnectAttr.

SQL_COPT_SS_PERF_DATA_LOG

SQL_COPT_SS_PERF_DATA_LOG assegna il nome del file di log utilizzato per registrare i dati relativi alle prestazioni. Il nome del file di log è una stringa ANSI o Unicode con terminazione Null che dipende dalla 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 del log delle statistiche sul disco. L'argomento StringLength deve essere SQL_NTS.

SQL_COPT_SS_PERF_QUERY

SQL_COPT_SS_PERF_QUERY avvia o interrompe la registrazione delle query con esecuzione prolungata. Il nome del file di log delle query deve essere specificato prima di avviare la registrazione. L'applicazione può definire l'esecuzione prolungata impostando l'intervallo per la registrazione.

Valore

Descrizione

SQL_PERF_START

Avvia la registrazione di query con esecuzione prolungata.

SQL_PERF_STOP

Interrompe la registrazione di query con esecuzione prolungata.

Per ulteriori 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 con esecuzione prolungata. Non sussiste alcun limite per la soglia massima di query. Un valore di soglia pari a zero comporta 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 dei dati delle query con esecuzione prolungata. Il nome del file di log è una stringa ANSI o Unicode con terminazione Null che dipende dalla compilazione dell'applicazione. L'argomento StringLength deve essere SQL_NTS.

SQL_COPT_SS_PRESERVE_CURSORS

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

Valore

Descrizione

SQL_PC_OFF

Predefinito. Quando si esegue il commit o il rollback di una transazione tramite SQLEndTran, i cursori vengono chiusi.

SQL_PC_ON

Quando si esegue il commit o il rollback della transazione tramite SQLEndTran, i cursori non vengono chiusi, a meno che non si utilizzi un cursore keyset o statico in modalità asincrona. Se si esegue un rollback quando il popolamento del cursore non è completo, il cursore viene chiuso.

SQL_COPT_SS_QUOTED_IDENT

SQL_COPT_SS_QUOTED_IDENT consente la presenza di identificatori tra virgolette in istruzioni ODBC e Transact-SQL eseguite nella connessione. Tramite l'immissione di identificatori tra virgolette, il driver ODBC di SQL Server Native Client consente la presenza di nomi di oggetto altrimenti non validi, ad esempio "Tabella personale", che contengono un carattere di spazio nell'identificatore. Per ulteriori informazioni, vedere SET QUOTED_IDENTIFIER.

Valore

Descrizione

SQL_QI_OFF

La connessione SQL Server non consente la presenza di identificatori tra virgolette in istruzioni Transact-SQL eseguite.

SQL_QI_ON

Predefinito. La connessione consente la presenza di identificatori tra virgolette in istruzioni Transact-SQL eseguite.

SQL_COPT_SS_TRANSLATE

SQL_COPT_SS_TRANSLATE fa in modo che il driver converta caratteri tra le tabelle codici del client e del server durante lo scambio di dati MBCS. L'attributo influisce solo su dati archiviati nelle colonne char, varchar e text di SQL Server.

Valore

Descrizione

SQL_XL_OFF

Il driver non converte i caratteri da una tabella codici all'altra nei dati di tipo carattere scambiati tra il client e il server.

SQL_XL_ON

Predefinito. Il driver converte 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 quella utilizzata dal client.

SQL_COPT_SS_TRUST_SERVER_CERTIFICATE

SQL_COPT_SS_TRUST_SERVER_CERTIFICATE fa in modo che il driver abiliti o disabiliti la convalida del certificato quando si utilizza la crittografia. Questo attributo è un valore di lettura/scrittura, ma non ha alcun effetto se lo si imposta una volta stabilita una connessione.

Le applicazioni client possono eseguire query su questa proprietà dopo l'apertura di una connessione per determinare le effettive impostazioni di crittografia e convalida 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 utilizzando SQL_ATTR_TXN_ISOLATION, in quanto il valore è specifico di SQL Server. Tale valore può tuttavia essere recuperato utilizzando SQL_ATTR_TXN_ISOLATION o SQL_COPT_SS_TXN_ISOLATION.

Valore

Descrizione

SQL_TXN_SS_SNAPSHOT

Indica che non è possibile visualizzare da una transazione le modifiche apportate in altre transazioni e che ciò non è possibile neanche ripetendo la query.

Per ulteriori informazioni sull'isolamento dello snapshot, vedere Utilizzo dell'isolamento dello snapshot.

SQL_COPT_SS_USE_PROC_FOR_PREP

Questo attributo non è più supportato perché SQL Server Native Client non supporta la connessione a SQL Server 6.5.

SQL_COPT_SS_USER_DATA

SQL_COPT_SS_USER_DATA imposta il puntatore ai dati dell'utente. I dati dell'utente vengono registrati nella memoria di proprietà del client per ogni connessione.

Per ulteriori informazioni, vedere SQLGetConnectAttr.

SQL_COPT_SS_WARN_ON_CP_ERROR

Quando questo attributo è impostato su SQL_WARN_YES, viene visualizzato un avviso che indica una perdita di dati durante la conversione di una tabella codici. Si applica solo ai dati provenienti dal server.

SQL_WARN_NOdisabilita l'avviso.

Supporto di SQLSetConnectAttr per nomi SPN (Service Principal Name)

SQLSetConnectAttr può essere utilizzato per impostare il valore dei nuovi attributi di connessione SQL_COPT_SS_SERVER_SPN e SQL_COPT_SS_FAILOVER_PARTNER_SPN. Tali attributi non possono essere impostati quando una connessione è aperta; se si tenta di impostare questi attributi quando una connessione è aperta, viene restituito l'errore HY011 con il messaggio "Operazione correntemente non valida". Per impostare questi valori è possibile utilizzare anche SQLSetConnectOption.

Per ulteriori informazioni sui nomi SPN, vedere Nomi SPN (Service Principal Name) nelle connessioni client (ODBC).

SQL_COPT_SS_CONNECTION_DEAD

Attributo di sola lettura.

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

Esempio

In questo esempio vengono registrati i dati relativi alle 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...

Cronologia modifiche

Aggiornamento del contenuto

Correzione dei valori di SQL_COPT_SS_ENCRYPT e SQL_COPT_SS_WARN_ON_CP_ERROR.

SQL_NTS documentato come unico valore da passare a StringLength per SQL_COPT_SS_PERF_DATA_LOG_NOW.