Freigeben über


SQLPoolConnect-Funktion

Konformität
Version eingeführt: ODBC 3.8 Standards Compliance: ODBC

Zusammenfassung
SQLPoolConnect wird verwendet, um eine neue Verbindung zu erstellen, wenn keine Verbindung im Pool wiederverwendet werden kann.

Syntax

  
SQLRETURN  SQLPoolConnect(  
                SQLHDBC              hDbc,  
                SQLHDBC_INFO_TOKEN   hDbcInfoToken,  
                WCHAR *              wszOutConnectString,  
                SQLSMALLINT          cchConnectStringBuffer,  
                SQLSMALLINT *        cchConnectStringLen );  

Argumente

Hdbc
[Eingabe] Das Verbindungshandle.

hDbcInfoToken
[Eingabe] Das Tokenhandle für die neue Anwendungsverbindungsanforderung.

wszOutConnectString
[Ausgabe] Zeiger auf einen Puffer für die abgeschlossene Verbindungszeichenfolge. Nach erfolgreicher Verbindung mit der Zieldatenquelle enthält dieser Puffer die abgeschlossene Verbindungszeichenfolge. Anwendungen sollten diesem Puffer mindestens 1.024 Zeichen zuordnen.

Wenn wszOutConnectString NULL ist, gibt cchConnectStringLen weiterhin die Gesamtzahl der Zeichen (mit Ausnahme des NULL-Beendigungszeichens für Zeichendaten) zurück, die im Puffer zurückgegeben werden können, auf den wszOutConnectString verweist.

cchConnectStringBuffer
[Eingabe] Länge des *wszOutConnectString-Puffers in Zeichen.

cchConnectStringLen
[Ausgabe] Zeiger auf einen Puffer, in dem die Gesamtzahl der Zeichen (mit Ausnahme des NULL-Terminierungszeichens) zurückgegeben werden soll, die in *wszOutConnectString zurückgegeben werden können. Wenn die Anzahl der zurückzugebenden Zeichen größer oder gleich cchConnectStringBuffer ist, wird die abgeschlossene Verbindungszeichenfolge in *wszOutConnectString incchConnectStringBuffer abzüglich der Länge eines NULL-Beendigungszeichens abgeschnitten.

Gibt zurück

SQL_SUCCESS, SQL_SUCCESS_WITH_INFO, SQL_ERROR oder SQL_INVALID_HANDLE.

Diagnose

Ähnlich wie SQLDriverConnect für jeden Eingabeüberprüfungsfehler, mit der Ausnahme, dass der Treiber-Manager einen HandleType von SQL_HANDLE_DBC_INFO_TOKEN und ein Handle von hDbcInfoToken verwendet.

Bemerkungen

Der Treiber-Manager garantiert, dass der übergeordnete HENV-Handle von hDbc und hDbcInfoToken identisch ist.

Im Gegensatz zu SQLDriverConnect gibt es kein DriverCompletion-Argument , um Benutzer zur Eingabe von Verbindungsinformationen aufzufordern. Ein Eingabeaufforderungsdialogfeld ist im Poolingszenario nicht zulässig.

Anwendungen sollten diese Funktion nicht direkt aufrufen. Diese Funktion muss von einem ODBC-Treiber implementiert werden, der treiberbasierte Verbindungspools unterstützt.

Wenn ein Treiber SQL_ERROR oder SQL_INVALID_HANDLE zurückgibt, gibt der Treiber-Manager den Fehler an die Anwendung zurück (in SQLConnect oder SQLDriverConnect).

Wenn ein Treiber SQL_SUCCESS_WITH_INFO zurückgibt, ruft der Treiber-Manager die Diagnoseinformationen von hDbcInfoToken ab und gibt SQL_SUCCESS_WITH_INFO an die Anwendung in SQLConnect und SQLDriverConnect zurück.

Wenn eine Anwendung SQLConnect verwendet, ist wszOutConnectString ein NULL-Puffer (die letzten drei Parameter werden alle auf NULL, 0, NULL festgelegt). Andernfalls muss der Treiber die Ausgabeverbindungszeichenfolge zurückgeben, die an den Aufruf der SQLDriverConnect-Funktion der Anwendung zurückgegeben wird.

Schließen Sie sqlspi.h für die ODBC-Treiberentwicklung ein.

Weitere Informationen

Entwickeln eines ODBC-Treibers
Treiberfähiges Verbindungspooling
Entwickeln von Verbindungspool-Unterstützung in einem ODBC-Treiber