SQLConfigDataSource-Funktion
Konformität
Eingeführte Version: ODBC 1.0
Zusammenfassung
SQLConfigDataSource fügt Datenquellen hinzu, ändert oder löscht sie.
Auf die Funktionalität von SQLConfigDataSource kann auch mit ODBCCONF.EXEzugegriffen werden.
Syntax
BOOL SQLConfigDataSource(
HWND hwndParent,
WORD fRequest,
LPCSTR lpszDriver,
LPCSTR lpszAttributes);
Argumente
hwndParent
[Eingabe] Handle des übergeordneten Fensters. Die Funktion zeigt keine Dialogfelder an, wenn das Handle NULL ist.
fRequest
[Eingabe] Typ der Anforderung. Das Argument fRequest muss einen der folgenden Werte enthalten:
ODBC_ADD_DSN: Fügen Sie eine neue Benutzerdatenquelle hinzu.
ODBC_CONFIG_DSN: Konfigurieren (Ändern) einer vorhandenen Benutzerdatenquelle.
ODBC_REMOVE_DSN: Entfernen Sie eine vorhandene Benutzerdatenquelle.
ODBC_ADD_SYS_DSN: Fügen Sie eine neue Systemdatenquelle hinzu.
ODBC_CONFIG_SYS_DSN: Ändern sie eine vorhandene Systemdatenquelle.
ODBC_REMOVE_SYS_DSN: Entfernen Sie eine vorhandene Systemdatenquelle.
ODBC_REMOVE_DEFAULT_DSN: Entfernen Sie den Standardabschnitt für die Datenquellenspezifikation aus den Systeminformationen. (Außerdem wird der Standardtreiberspezifikationsabschnitt aus dem eintrag Odbcinst.ini in den Systeminformationen entfernt. Diese fRequest führt dieselbe Funktion wie die veraltete SQLRemoveDefaultDataSource-Funktion aus.) Wenn diese Option angegeben ist, sollten alle anderen Parameter im Aufruf von SQLConfigDataSource NULLs sein. wenn sie nicht NULL sind, werden sie ignoriert.
lpszDriver
[Eingabe] Treiberbeschreibung (in der Regel der Name des zugeordneten DBMS), der Benutzern anstelle des physischen Treibernamens angezeigt wird.
lpszAttributes
[Eingabe] Eine doppelt mit NULL endende Liste von Attributen in Form von Schlüsselwort-Wert-Paaren. Weitere Informationen finden Sie unter ConfigDSN.
Gibt zurück
Die Funktion gibt TRUE zurück, wenn sie erfolgreich ist, FALSE, wenn sie fehlschlägt. Wenn beim Aufrufen dieser Funktion kein Eintrag in den Systeminformationen vorhanden ist, gibt die Funktion FALSE zurück.
Diagnose
Wenn SQLConfigDataSource FALSE zurückgibt, kann ein zugeordneter *pfErrorCode-Wert abgerufen werden, indem SQLInstallerError aufgerufen wird. In der folgenden Tabelle sind die *pfErrorCode-Werte aufgeführt, die von SQLInstallerError zurückgegeben werden können, und erläutert die einzelnen Werte im Kontext dieser Funktion.
*pfErrorCode | Fehler | BESCHREIBUNG |
---|---|---|
ODBC_ERROR_GENERAL_ERR | Allgemeiner Installationsfehler | Es ist ein Fehler aufgetreten, für den kein spezifischer Installationsfehler aufgetreten ist. |
ODBC_ERROR_INVALID_HWND | Ungültiges Fensterhandle | Das Argument hwndParent war ungültig oder NULL. |
ODBC_ERROR_INVALID_REQUEST_TYPE | Ungültiger Anforderungstyp | Das fRequest-Argument war nicht eines der folgenden: ODBC_ADD_DSN ODBC_CONFIG_DSN ODBC_REMOVE_DSN ODBC_ADD_SYS_DSN ODBC_CONFIG_SYS_DSN ODBC_REMOVE_SYS_DSN ODBC_REMOVE_DEFAULT_DSN |
ODBC_ERROR_INVALID_NAME | Ungültiger Treiber- oder Übersetzername | Das lpszDriver-Argument war ungültig. Sie konnte in der Registrierung nicht gefunden werden. |
ODBC_ERROR_INVALID_KEYWORD_VALUE | Ungültige Schlüsselwort-Wert-Paare | Das lpszAttributes-Argument enthielt einen Syntaxfehler. |
ODBC_ERROR_REQUEST_FAILED | Fehler bei der Anforderung | Das Installationsprogramm konnte den vom fRequest-Argument angeforderten Vorgang nicht ausführen. Fehler beim Aufruf von ConfigDSN . |
ODBC_ERROR_LOAD_LIBRARY_FAILED | Die Setupbibliothek für Treiber oder Übersetzer konnte nicht geladen werden. | Die Setupbibliothek des Treibers konnte nicht geladen werden. |
ODBC_ERROR_OUT_OF_MEM | Nicht genügend Arbeitsspeicher. | Das Installationsprogramm konnte die Funktion aufgrund eines Mangels an Arbeitsspeicher nicht ausführen. |
Kommentare
SQLConfigDataSource verwendet den Wert von lpszDriver , um den vollständigen Pfad der Setup-DLL für den Treiber aus den Systeminformationen zu lesen. Es lädt die DLL und ruft ConfigDSN mit denselben Argumenten auf, die an sie übergeben wurden.
SQLConfigDataSource gibt FALSE zurück, wenn die Setup-DLL nicht gefunden oder geladen werden kann oder wenn der Benutzer das Dialogfeld abbricht. Andernfalls wird der Status zurückgegeben, den sie von ConfigDSN erhalten hat.
SQLConfigDataSource ordnet die System DSN fRequestsden Benutzer-DSN fRequests zu (ODBC_ADD_SYS_DSN zu ODBC_ADD_DSN, ODBC_CONFIG_SYS_DSN zu ODBC_CONFIG_DSN und ODBC_REMOVE_SYS_DSN zu ODBC_REMOVE_DSN). Um Benutzer- und System-DSNs zu unterscheiden, legt SQLConfigDataSource den Installationskonfigurationsmodus gemäß der folgenden Tabelle fest. Vor der Rückgabe setzt SQLConfigDataSource den Konfigurationsmodus auf BOTHDSN zurück. ConfigDSN (von Treibern implementiert) sollte SQLWriteDSNToIni und SQLWritePrivateProfileString aufrufen, um einen System-DSN zu unterstützen. Weitere Informationen finden Sie unter ConfigDSN-Funktion.
fRequest | Konfigurationsmodus |
---|---|
ODBC_ADD_DSN | USERDSN_ONLY |
ODBC_CONFIG_DSN | USERDSN_ONLY |
ODBC_REMOVE_DSN | USERDSN_ONLY |
ODBC_ADD_SYS_DSN | SYSTEMDSN_ONLY |
ODBC_CONFIG_SYS_DSN | SYSTEMDSN_ONLY |
ODBC_REMOVE_SYS_DSN | SYSTEMDSN_ONLY |
Verwandte Funktionen
Informationen über | Finden Sie unter |
---|---|
Hinzufügen, Ändern oder Entfernen einer Datenquelle | ConfigDSN (in der Setup-DLL) |
Entfernen eines Datenquellennamens aus den Systeminformationen | SQLRemoveDSNFromIni |
Hinzufügen eines Datenquellennamens zu den Systeminformationen | SQLWriteDSNToIni |