Initialisierungs- und Autorisierungseigenschaften (Native Client OLE DB-Anbieter)
Gilt für: SQL Server Azure SQL-Datenbank Azure SQL Managed Instance Azure Synapse Analytics Analytics Platform System (PDW)
Wichtig
Der SQL Server Native Client (häufig abgekürzt mit SNAC) wurde aus SQL Server 2022 (16.x) und SQL Server Management Studio 19 (SSMS) entfernt. Sowohl der OLE DB-Anbieter für den SQL Server Native Client (SQLNCLI oder SQLNCLI11) als auch der Microsoft OLE DB-Legacyanbieter für SQL Server (SQLOLEDB) werden für Neuentwicklungen nicht empfohlen. Verwenden Sie in Zukunft den neuen Microsoft OLE DB-Treiber für SQL Server (MSOLEDBSQL).
Der OLE DB-Anbieter von SQL Server Native Client interpretiert OLE DB-Initialisierungs- und Autorisierungseigenschaften wie folgt:
Eigenschafts-ID | BESCHREIBUNG |
---|---|
DBPROP_AUTH_CACHE_AUTHINFO | Der OLE DB-Anbieter von SQL Server Native Client speichert keine Authentifizierungsinformationen zwischen. Der OLE DB-Anbieter des SQL Server Native Client gibt DB_S_ERRORSOCCURRED zurück, wenn versucht wird, den Eigenschaftswert festzulegen. Das dwStatus-Element der DBPROP-Struktur gibt DBPROPSTATUS_NOTSUPPORTED an. |
DBPROP_AUTH_ENCRYPT_PASSWORD | Der OLE DB-Anbieter von SQL Server Native Client verwendet standardmäßige Microsoft SQL Server-Sicherheitsmechanismen, um Kennwörter zu verbergen. Der OLE DB-Anbieter des SQL Server Native Client gibt DB_S_ERRORSOCCURRED zurück, wenn versucht wird, den Eigenschaftswert festzulegen. Das dwStatus-Element der DBPROP-Struktur gibt DBPROPSTATUS_NOTSUPPORTED an. |
DBPROP_AUTH_INTEGRATED | Wenn DBPROP_AUTH_INTEGRATED auf einen NULL-Zeiger, eine NULL-Zeichenfolge oder einen SSPI-VT_BSTR Wert festgelegt ist, verwendet der OLE DB-Anbieter von SQL Server Native Client Den Windows-Authentifizierungsmodus, um den Benutzerzugriff auf die SQL Server-Datenbank zu autorisieren, die durch die eigenschaften DBPROP_INIT_DATASOURCE und DBPROP_INIT_CATALOG angegeben wird. Wenn die Option auf VT_EMPTY (Standardwert) festgelegt ist, wird SQL Server-Sicherheit verwendet. Die SQL Server-Anmeldung und das Kennwort werden in der DBPROP_AUTH_USERID-und der DBPROP_AUTH_PASSWORD-Eigenschaft angegeben. |
DBPROP_AUTH_MASK_PASSWORD | Der OLE DB-Anbieter von SQL Server Native Client verwendet standardmäßige SQL Server-Sicherheitsmechanismen, um Kennwörter zu verbergen. Der OLE DB-Anbieter des SQL Server Native Client gibt DB_S_ERRORSOCCURRED zurück, wenn versucht wird, den Eigenschaftswert festzulegen. Das dwStatus-Element der DBPROP-Struktur gibt DBPROPSTATUS_NOTSUPPORTED an. |
DBPROP_AUTH_PASSWORD | Einer SQL Server-Anmeldung zugewiesenes Kennwort. Diese Eigenschaft wird verwendet, wenn die SQL Server-Authentifizierung zum Autorisieren des Zugriffs auf eine SQL Server-Datenbank ausgewählt wird. |
DBPROP_AUTH_PERSIST_ENCRYPTED | Der OLE DB-Anbieter von SQL Server Native Client verschlüsselt keine Authentifizierungsinformationen, wenn sie beibehalten werden. Der OLE DB-Anbieter des SQL Server Native Client gibt DB_S_ERRORSOCCURRED zurück, wenn versucht wird, den Eigenschaftswert festzulegen. Das dwStatus-Element der DBPROP-Struktur gibt DBPROPSTATUS_NOTSUPPORTED an. |
DBPROP_AUTH_PERSIST_SENSITIVE_AUTHINFO | Der OLE DB-Anbieter von SQL Server Native Client speichert Authentifizierungswerte, einschließlich eines Bilds eines Kennworts, falls erforderlich. Es wird keine Verschlüsselung bereitgestellt. |
DBPROP_AUTH_USERID | SQL Server-Anmeldename. Diese Eigenschaft wird verwendet, wenn die SQL Server-Authentifizierung zum Autorisieren des Zugriffs auf eine SQL Server-Datenbank ausgewählt wird. |
DBPROP_INIT_ASYNCH | Der OLE DB-Anbieter von SQL Server Native Client unterstützt asynchrone Initiierung. Das Festlegen des DBPROPVAL_ASYNCH_INITIALIZE-Bits in der DBPROP_INIT_ASYNCH-Eigenschaft führt dazu, dass IDBInitialize::Initialize ein nicht blockierender Aufruf wird. Weitere Informationen finden Sie unter Ausführen asynchroner Vorgänge. |
DBPROP_INIT_CATALOG | Name einer vorhandenen SQL Server-Datenbank, zu der eine Verbindung hergestellt werden soll. |
DBPROP_INIT_DATASOURCE | Netzwerkname eines Servers, auf dem eine Instanz von Microsoft SQL Server ausgeführt wird. Wenn mehrere Instanzen von SQL Server auf dem Computer ausgeführt werden, wird der Wert DBPROP_INIT_DATASOURCE als \\ServerName\InstanceName angegeben, um eine Verbindung mit einer bestimmten Instanz von SQL Server herzustellen. Die Escapesequenz "\\" wird für den umgekehrten Schrägstrich selbst verwendet. |
DBPROP_INIT_GENERALTIMEOUT | Gibt die Anzahl von Sekunden vor einer Anforderung an, außer der Datenquelleninitialisierung und Befehlsausführung, ein Zeitüberschreitung. Ein Wert von 0 gibt einen unendlichen Timeout an. Anbieter, die über Netzwerkverbindungen oder in verteilten oder transaktionsbasierten Szenarien arbeiten, können diese Eigenschaft unterstützen, um eine aufgelistete Komponente für einen Timeout im Falle einer langfristigen Anforderung zu empfehlen. Timeouts für die Datenquelleninitialisierung und die Befehlsausführung werden weiterhin von DBPROP_INIT_TIMEOUT bzw. DBPROP_COMMANDTIMEOUT gesteuert. DBPROP_INIT_GENERALTIMEOUT ist schreibgeschützt. Wenn versucht wird, diese Eigenschaft festzulegen, wird der dwstatus-Fehler DBPROPSTATUS_NOTSETTABLE zurückgegeben. |
DBPROP_INIT_HWND | Das Fensterhandle der aufrufenden Anwendung. Es ist ein gültiges Fensterhandle für das angezeigte Initialisierungsdialogfeld erforderlich, wenn die Aufforderung für Initialisierungseigenschaften zugelassen ist. |
DBPROP_INIT_IMPERSONATION_LEVEL | Der OLE DB-Anbieter von SQL Server Native Client unterstützt keine Anpassung der Identitätswechselebene. Der OLE DB-Anbieter des SQL Server Native Client gibt DB_S_ERRORSOCCURRED zurück, wenn versucht wird, den Eigenschaftswert festzulegen. Das dwStatus-Element der DBPROP-Struktur gibt DBPROPSTATUS_NOTSUPPORTED an. |
DBPROP_INIT_LCID | Der OLE DB-Anbieter von SQL Server Native Client überprüft die Gebietsschema-ID und gibt einen Fehler zurück, wenn die Gebietsschema-ID nicht unterstützt wird oder nicht auf dem Client installiert ist. |
DBPROP_INIT_LOCATION | Der OLE DB-Anbieter des SQL Server Native Client gibt DB_S_ERRORSOCCURRED zurück, wenn versucht wird, den Eigenschaftswert festzulegen. Das dwStatus-Element der DBPROP-Struktur gibt DBPROPSTATUS_NOTSUPPORTED an. |
DBPROP_INIT_MODE | Der OLE DB-Anbieter des SQL Server Native Client gibt DB_S_ERRORSOCCURRED zurück, wenn versucht wird, den Eigenschaftswert festzulegen. Das dwStatus-Element der DBPROP-Struktur gibt DBPROPSTATUS_NOTSUPPORTED an. |
DBPROP_INIT_PROMPT | Der OLE DB-Anbieter von SQL Server Native Client unterstützt alle Aufforderungsmodi für die Datenquelleninitialisierung. Der OLE DB-Anbieter von SQL Server Native Client verwendet DBPROMPT_NOPROMPT als Standardeinstellung für die Eigenschaft. |
DBPROP_INIT_PROTECTION_LEVEL | Der OLE DB-Anbieter von SQL Server Native Client unterstützt keine Schutzebene für Verbindungen mit Instanzen von SQL Server. Der OLE DB-Anbieter des SQL Server Native Client gibt DB_S_ERRORSOCCURRED zurück, wenn versucht wird, den Eigenschaftswert festzulegen. Das dwStatus-Element der DBPROP-Struktur gibt DBPROPSTATUS_NOTSUPPORTED an. |
DBPROP_INIT_PROVIDERSTRING | Weitere Informationen finden Sie in der OLE DB-Anbieterzeichenfolge des SQL Server Native Client weiter unten in diesem Thema. |
DBPROP_INIT_TIMEOUT | Der OLE DB-Anbieter des SQL Server Native Client gibt einen Fehler bei der Initialisierung zurück, wenn innerhalb der angegebenen Anzahl von Sekunden keine Verbindung mit der SQL Server-Instanz hergestellt werden kann. |
Im anbieterspezifischen Eigenschaftensatz DBPROPSET_SQLSERVERDBINIT definiert der OLE DB-Anbieter von SQL Server Native Client diese zusätzlichen Initialisierungseigenschaften.
Eigenschafts-ID | Beschreibung |
---|---|
SSPROP_AUTH_OLD_PASSWORD | Typ: VT_BSTR R/W: Schreiben Standardwert: VT_EMPTY Beschreibung: Das aktuelle oder abgelaufene Kennwort. Weitere Informationen finden Sie unter Programmgesteuertes Ändern von Kennwörtern. |
SSPROP_INIT_APPNAME | Typ: VT_BSTR R/W: Lesen/Schreiben Beschreibung: Der Name der Clientanwendung. |
SSPROP_INIT_AUTOTRANSLATE | Typ: VT_BOOL R/W: Lesen/Schreiben Standardwert: VARIANT_TRUE Beschreibung: OEM/ANSI-Zeichenkonvertierung. VARIANT_TRUE: Der OLE DB-Anbieter des SQL Server Native Client übersetzt ANSI-Zeichenfolgen, die zwischen dem Client und dem Server gesendet werden, indem er über Unicode konvertiert wird, um Probleme beim Abgleichen erweiterter Zeichen zwischen den Codeseiten auf dem Client und dem Server zu minimieren: Client-DBTYPE_STR Daten, die an eine Instanz von SQL Server-Zeichen, Varchar oder Textvariablen, Parametern oder Spalten gesendet werden, werden mithilfe der Client-ANSI-Codeseite (ACP) von Unicode in Zeichen mithilfe des ACP des Servers konvertiert. SQL Server char-, varchar- oder text-Daten, die an einer Client-DBTYPE_STR-Variable gesendet werden, werden mithilfe der Server-ACP von Zeichen in Unicode und dann mithilfe der Client-ACP von Unicode wieder in Zeichen konvertiert. Diese Konvertierungen werden auf dem Client vom SQL Server Native Client OLE DB-Anbieter ausgeführt. Dies erfordert, dass auf dem Client dieselbe ACP verfügbar ist wie auf dem Server. Diese Einstellungen haben keine Auswirkungen auf die Konvertierungen, die für diese Übertragungen stattfinden: An char, varchar oder text auf dem Server gesendete Unicode-DBTYPE_WSTR-Clientdaten. char-, varchar- oder text-Serverdaten, die an eine Unicode-DBTYPE_WSTR-Variable auf dem Client gesendet werden. ANSI DBTYPE_STR-Clientdaten, die an Unicode-nchar-, nvarchar- oder ntext auf dem Server gesendet werden. Unicode-char-, varchar- oder text-Serverdaten, die an eine ANSI DBTYPE_STR-Variable auf dem Client gesendet werden. VARIANT_FALSE: Der OLE DB-Anbieter des SQL Server Native Client führt keine Zeichenübersetzungen durch. Der OLE DB-Anbieter von SQL Server Native Client übersetzt keine Client-ANSI-Zeichen DBTYPE_STR Daten, die an Char-, Varchar- oder Textvariablen , Parameter oder Spalten auf dem Server gesendet werden. Es wird keine Übersetzung von char-, varchar- oder text-Daten durchgeführt, die vom Server an DBTYPE_STR-Variablen auf dem Client gesendet werden. Wenn der Client und die Instanz von SQL Server unterschiedliche ACPs verwenden, können Sonderzeichen fehlinterpretiert werden. |
SSPROP_INIT_CURRENTLANGUAGE | Typ: VT_BSTR R/W: Lesen/Schreiben Beschreibung: Ein SQL Server-Sprachname. Identifiziert die für die Auswahl und Formatierung von Systemnachrichten verwendete Sprache. Die Sprache muss auf dem Computer installiert sein, auf dem eine Instanz von SQL Server ausgeführt wird, sonst schlägt die Datenquelleninitialisierung fehl. |
SSPROP_INIT_DATATYPECOMPATIBILITY | Typ: VT_UI2 R/W: Lesen/Schreiben Standardwert: 0 Beschreibung: Ermöglicht Datentypkompatibilität zwischen SQL Server- und ActiveX Data Object (ADO)-Anwendungen. Wenn der Standardwert "0" verwendet wird, wird standardmäßig die Datentypverarbeitung verwendet, die der Anbieter verwendet. Wenn der Wert 80 verwendet wird, verwendet die Datentypverarbeitung nur SQL Server 2000 (8.x)-Datentypen. Weitere Informationen finden Sie unter Verwenden von ADO mit SQL Server Native Client. |
SSPROP_INIT_ENCRYPT | Typ: VT_BOOL R/W: Lesen/Schreiben Standardwert: VARIANT_FALSE Beschreibung: Zur Verschlüsselung von Daten, die über das Netzwerk gesendet werden, wird die SSPROP_INIT_ENCRYPT-Eigenschaft auf VARIANT_TRUE festgelegt. Wenn die Protokollverschlüsselung aktiviert ist, wird immer verschlüsselt, unabhängig von der Einstellung von SSPROP_INIT_ENCRYPT. Wenn sie deaktiviert ist und SSPROP_INIT_ENCRYPT auf VARIANT_TRUE festgelegt wird, wird verschlüsselt. Wenn die Protokollverschlüsselung deaktiviert ist und SSPROP_INIT_ENCRYPT auf VARIANT_FALSE festgelegt wird, wird nicht verschlüsselt. |
SSPROP_INIT_FAILOVERPARTNER | Typ: VT_BSTR R/W: Lesen/Schreiben Beschreibung: Gibt den Namen des Failoverpartners für die Datenbankspiegelung an. Es handelt sich um eine Initialisierungseigenschaft, die nur vor der Initialisierung festgelegt werden kann. Nach der Initialisierung gibt sie den ggf. vom primären Server zurückgegebenen Failoverpartner zurück. Dies ermöglicht einer intelligenten Anwendung, den aktuell festgestellten Sicherungsserver in den Cache zu speichern. Jedoch sollte bei solchen Anwendungen darauf geachtet werden, dass die Informationen nur aktualisiert werden, wenn die Verbindung zum ersten Mal hergestellt (oder zurückgesetzt, falls in einem Pool) wird, und bei Langzeitverbindungen veralten kann. Nach dem Herstellen der Verbindung kann die Anwendung dieses Attribut abfragen, um die Identität des Failoverpartners festzustellen. Wenn der primäre Server über keinen Failoverpartner verfügt, gibt diese Eigenschaft eine leere Zeichenfolge zurück. Weitere Informationen finden Sie unter Verwenden der Datenbankspiegelung. |
SSPROP_INIT_FILENAME | Typ: VT_BSTR R/W: Lesen/Schreiben Beschreibung: Gibt die primäre Datei für eine anfügbare Datenbank an. Diese Datenbank wird angefügt und als Standarddatenbank für die Verbindung verwendet. Sie müssen den Namen der Datenbank als Wert der Initialisierungseigenschaft DBPROP_INIT_CATALOG angeben, um SSPROP_INIT_FILENAME verwenden zu können. Wenn der Datenbankname nicht vorhanden ist, wird nach dem primären Dateinamen, der in SSPROP_INIT_FILENAME angegeben ist, gesucht, und die Datenbank mit dem in DBPROP_INIT_CATALOG angegebenen Namen wird angefügt. Wenn die Datenbank bereits vorher angefügt wurde, fügt SQL Server sie nicht erneut an. |
SSPROP_INIT_MARSCONNECTION | Typ: VT_BOOL R/W: Lesen/Schreiben Standardwert: VARIANT_FALSE Beschreibung: Gibt an, ob Multiple Active Result Sets (MARS) für die Verbindung aktiviert sind. Diese Option muss auf den Wert "True" festgelegt werden, bevor eine Verbindung mit der Datenbank hergestellt wird. Weitere Informationen finden Sie unter Verwenden von Multiple Active Result Sets (MARS). |
SSPROP_INIT_NETWORKADDRESS | Typ: VT_BSTR R/W: Lesen/Schreiben Beschreibung: Die Netzwerkadresse des Servers, auf dem eine von der DBPROP_INIT_DATASOURCE-Eigenschaft angegebene Instanz von SQL Server ausgeführt wird. |
SSPROP_INIT_NETWORKLIBRARY | Typ: VT_BSTR R/W: Lesen/Schreiben Beschreibung: Der Name der Netzwerkbibliothek (DLL), die zum Kommunizieren mit einer Instanz von SQL Server verwendet wird. Der Name sollte weder den Pfad noch die DLL-Dateinamenerweiterung enthalten. Der Standard kann mit dem SQL Server-Clientkonfigurations-Hilfsprogramm angepasst werden. Hinweis: Diese Eigenschaft unterstützt nur TCP und Named Pipes. Wenn Sie diese Eigenschaft mit einem Präfix verwenden, erhalten Sie ein Doppelpräfix, da die Eigenschaft zur internen Generierung eines Präfix verwendet wird. Dies führt zu einem Fehler. |
SSPROP_INIT_PACKETSIZE | Typ: VT_I4 R/W: Lesen/Schreiben Beschreibung: Eine Netzwerkpaketgröße in Bytes. Der Paketgrößen-Eigenschaftswert muss zwischen 512 und 32.767 liegen. Die standardmäßige OLE DB-Netzwerkpaketgröße des SQL Server Native Client OLE DB-Anbieters beträgt 4.096. |
SSPROP_INIT_TAGCOLUMNCOLLATION | Typ: BOOL R/W: Schreiben Standard: FALSE Beschreibung: Wird während eines Datenbankupdates verwendet, wenn serverseitige Cursor verwendet werden. Diese Eigenschaft markiert die Daten mit Sortierungsinformationen, die vom Server stammen und nicht von der Codeseite des Clients. Derzeit wird diese Eigenschaft nur vom verteilten Abfrageprozess verwendet, da dieser die Sortierung der Zieldaten kennt und korrekt konvertiert. |
SSPROP_INIT_TRUST_SERVER_CERTIFICATE | Typ: VT_BOOL R/W: Lesen/Schreiben Standardwert: VARIANT_FALSE Beschreibung: Wird verwendet, um die Serverzertifikatüberprüfung zu aktivieren oder zu deaktivieren. Diese Eigenschaft bietet Lese- und Schreibzugriff. Wenn jedoch versucht wird, sie nach der Herstellung einer Verbindung festzulegen, führt dies zu einem Fehler. Diese Eigenschaft wird ignoriert, wenn der Client so konfiguriert ist, dass er eine Zertifikatsüberprüfung erfordert. Eine Anwendung kann die Eigenschaft jedoch zusammen mit SSPROP_INIT_ENCRYPT verwenden, um die Verschlüsselung der Verbindung mit dem Server auch dann zu gewährleisten, wenn der Client so konfiguriert ist, dass er keine Verschlüsselung erfordert und kein Zertifikat auf dem Client zur Verfügung steht. Clientanwendungen können diese Eigenschaft abfragen, nachdem eine Verbindung zur Feststellung der tatsächlich verwendeten Verschlüsselungs- und Validierungseigenschaften geöffnet wurde. Hinweis: Eine Verschlüsselung ohne Zertifikatüberprüfung bietet einen teilweisen Schutz gegen Paket-Sniffing, nicht jedoch gegen "Man-in-the-Middle"-Angriffe. Es wird dadurch nur ermöglicht, die Anmeldung und die an den Server gesendeten Daten zu verschlüsseln, ohne das Serverzertifikat zu überprüfen. Weitere Informationen finden Sie unter Verwenden von Verschlüsselung ohne Überprüfung. |
SSPROP_INIT_USEPROCFORPREP | Typ: VT_I4 R/W: Lesen/Schreiben Standardwert: SSPROPVAL_USEPROCFORPREP_ON Beschreibung: Verwendung der gespeicherte SQL Server-Prozedur. Definiert die Verwendung von temporär gespeicherten SQL Server-Prozeduren zur Unterstützung der ICommandPrepare-Schnittstelle. Diese Eigenschaft war nur sinnvoll, wenn eine Verbindung mit SQL Server 6.5 hergestellt wurde. Für höhere Versionen wird die Eigenschaft ignoriert. SSPROPVAL_USEPROCFORPREP_OFF: Bei der Befehlsvorbereitung wird keine temporär gespeicherte Prozedur erstellt. SSPROPVAL_USEPROCFORPREP_ON: Bei der Befehlsvorbereitung wird eine temporär gespeicherte Prozedur erstellt. Die temporär gespeicherten Prozeduren werden gelöscht, wenn die Sitzung freigegeben wird. SSPROPVAL_USEPROCFORPREP_ON_DROP: Bei der Befehlsvorbereitung wird eine temporär gespeicherte Prozedur erstellt. Die Prozedur wird gelöscht, wenn die Vorbereitung des Befehls mit ICommandPrepare::Unprepare aufgehoben wird, wenn mit ICommandText::SetCommandText ein neuer Befehl für das Befehlsobjekt angegeben wird oder wenn alle Anwendungsverweise auf den Befehl freigegeben werden. |
SSPROP_INIT_WSID | Typ: VT_BSTR R/W: Lesen/Schreiben Beschreibung: Eine Zeichenfolge, die die Arbeitsstation identifiziert. |
Im anbieterspezifischen Eigenschaftensatz DBPROPSET_SQLSERVERDATASOURCEINFO definiert der OLE DB-Anbieter von SQL Server Native Client die zusätzlichen Eigenschaften; weitere Informationen finden Sie unter "Datenquelleninformationseigenschaften ".
Die SQL Server Native Client OLE DB-Anbieterzeichenfolge
Der OLE DB-Anbieter von SQL Server Native Client erkennt eine ODBC-ähnliche Syntax in Zeichenfolgenwerten des Anbieters. Die Anbieterzeichenfolgen-Eigenschaft wird als Wert der OLE DB-Initialisierungseigenschaft DBPROP_INIT_PROVIDERSTRING verfügbar gemacht, wenn eine Verbindung zur OLE DB-Datenquelle hergestellt wird. Diese Eigenschaft gibt die OLE DB-Anbieter-spezifischen Verbindungsdaten an, die zur Implementierung einer Verbindung mit der OLE DB-Datenquelle erforderlich sind. Innerhalb der Zeichenfolge werden Elemente mit einem Semikolon begrenzt. Das abschließende Element in der Zeichenfolge muss mit einem Semikolon beendet werden. Jedes Element besteht aus einem Schlüsselwort, einem Gleichheitszeichen und dem bei der Initialisierung übergebenen Wert. Zum Beispiel:
Server=MyServer;UID=MyUserName;
Beim OLE DB-Anbieter des SQL Server Native Client muss der Consumer niemals die Anbieterzeichenfolgeneigenschaft verwenden. Der Consumer kann jede Initialisierungseigenschaft, die in der Anbieterzeichenfolge widergespiegelt wird, mithilfe von OLE DB- oder SQL Server Native Client OLE DB-anbieterspezifischen Initialisierungseigenschaften festlegen.
Eine Liste der Im SQL Server Native Client OLE DB-Anbieter verfügbaren Schlüsselwörter finden Sie unter Verwenden von Verbindungszeichenfolgenstichwörtern mit SQL Server Native Client.