Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Conformità
Versione introdotta: Conformità agli standard ODBC 3.81: ODBC
Sommario
SQLSetConnectAttrForDbcInfo è lo stesso di SQLSetConnectAttr, ma imposta l'attributo sul token di informazioni di connessione invece che sul handle di connessione.
Sintassi
SQLRETURN SQLSetConnectAttrForDbcInfo(
SQLHDBC_INFO_TOKEN hDbcInfoToken,
SQLINTEGER Attribute,
SQLPOINTER ValuePtr,
SQLINTEGER StringLength );
Arguments
hDbcInfoToken
[Input] Nickname del token.
Attributo
[Input] Attributo al set. L'elenco degli attributi validi è specifico per driver ed è lo stesso di SQLSetConnectAttr.
ValuePtr
[Input] Punta al valore da associare a Attributo. A seconda del valore di Attributo, ValuePtr sarà un valore intero senza segno a 32 bit oppure punterà a una stringa di caratteri terminata nullo. Si noti che se l'argomento Attribute è un valore specifico del driver, il valore in ValuePtr può essere un intero con segno.
StringLength
[Input] Se Attribute è un attributo definito da ODBC e ValuePtr punta a una stringa di caratteri o a un buffer binario, questo argomento deve essere la lunghezza di *ValuePtr. Per i dati della stringa di caratteri, questo argomento dovrebbe contenere il numero di byte nella stringa.
Se Attribute è un attributo definito da ODBC e ValuePtr è un numero intero, StringLength viene ignorato.
Se Attribute è un attributo definito dal driver, l'applicazione indica la natura dell'attributo a Gestione driver impostando l'argomento StringLength . StringLength può avere i valori seguenti:
Se ValuePtr è un puntatore a una stringa di caratteri, StringLength è la lunghezza della stringa o SQL_NTS.
Se ValuePtr è un puntatore a un buffer binario, l'applicazione inserisce il risultato della macro SQL_LEN_BINARY_ATTR(length) in StringLength. In questo modo viene impostato un valore negativo in StringLength.
Se ValuePtr è un puntatore a un valore diverso da una stringa di caratteri o una stringa binaria, StringLength deve avere il valore SQL_IS_POINTER.
Se ValuePtr contiene un valore a lunghezza fissa, StringLength è SQL_IS_INTEGER o SQL_IS_UINTEGER, in base alle esigenze.
Returns
SQL_SUCCESS, SQL_SUCCESS_WITH_INFO, SQL_ERROR o SQL_INVALID_HANDLE.
Diagnostica
Lo stesso vale per SQLSetConnectAttr, tranne che il Driver Manager userà un HandleType di SQL_HANDLE_DBC_INFO_TOKEN e un Handle di hDbcInfoToken.
Osservazioni:
SQLSetConnectAttrForDbcInfo è lo stesso di SQLSetConnectAttr, ma imposta l'attributo sul token di informazioni di connessione, invece che sul handle di connessione. Ad esempio, se SQLSetConnectAttr non riconosce un attributo, SQLSetConnectAttrForDbcInfo dovrebbe restituire SQL_ERROR per quell'attributo.
Ogni volta che il driver restituisce SQL_ERROR o SQL_INVALID_HANDLE, il driver dovrebbe ignorare questo attributo per calcolare l'ID del pool. Inoltre, il Driver Manager otterrà le informazioni diagnostiche da hDbcInfoToken e restituirà SQL_SUCCESS_WITH_INFO all'applicazione in SQLConnect e SQLDriverConnect. Pertanto, un'applicazione può recuperare dettagli sul motivo per cui alcuni attributi non possono essere impostati.
Le applicazioni non dovrebbero chiamare direttamente questa funzione. Un driver ODBC che supporta il pooling di connessioni consapevole del driver deve implementare questa funzione.
Includere sqlspi.h per lo sviluppo dei driver ODBC.