Freigeben über


SQLSetConnectAttr

Der SQL Server Native Client ODBC-Treiber ignoriert die Einstellung von SQL_ATTR_CONNECTION_TIMEOUT.

SQL_ATTR_TRANSLATE_LIB wird ebenfalls ignoriert. Die Angabe einer anderen Übersetzungsbibliothek wird nicht unterstützt. Damit Anwendungen problemlos portiert werden können, um einen Microsoft ODBC-Treiber für SQL Server zu verwenden, werden alle mit SQL_ATTR_TRANSLATE_LIB festgelegten Werte in einen und aus einem Puffer im Treiber-Manager kopiert.

Der SQL Server Native Client ODBC-Treiber implementiert wiederholbare Lesetransaktionsisolation als serialisierbar.

SQL Server 2005 wurde die Unterstützung für ein neues Transaktionsisolationssattribut SQL_COPT_SS_TXN_ISOLATION eingeführt. Durch Festlegen von SQL_COPT_SS_TXN_ISOLATION auf SQL_TXN_SS_SNAPSHOT wird angegeben, dass die Transaktion unter der Momentaufnahmeisolationsstufe ausgeführt wird.

Hinweis

SQL_ATTR_TXN_ISOLATION kann verwendet werden, um alle anderen Isolationsstufen außer SQL_TXN_SS_SNAPSHOT festzulegen. Wenn Sie die Momentaufnahmeisolation verwenden möchten, müssen Sie SQL_TXN_SS_SNAPSHOT über SQL_COPT_SS_TXN_ISOLATION festlegen. Sie können die Isolationsstufe jedoch entweder mithilfe von SQL_ATTR_TXN_ISOLATION oder mithilfe von SQL_COPT_SS_TXN_ISOLATION abrufen.

Das Heraufstufen von ODBC-Anweisungsattributen auf Verbindungsattribute kann unerwartete Folgen haben. Anweisungsattribute, die Servercursorn für die Verarbeitung von Resultsets anfordern, können auf Verbindungsattribute heraufgestuft werden. Wenn Sie beispielsweise das ODBC-Anweisungsattribut SQL_ATTR_CONCURRENCY auf einen Wert festlegen, der restriktiver ist als der Standardwert, weist SQL_CONCUR_READ_ONLY den Treiber an, für alle Anweisungen, die für die Verbindung übermittelt werden, dynamische Cursor zu verwenden. Beim Ausführen einer ODBC-Katalogfunktion für eine Anweisung für die Verbindung wird SQL_SUCCESS_WITH_INFO und ein Diagnosedatensatz zurückgegeben, der angibt, dass das Cursorverhalten in schreibgeschützt geändert wurde. Beim Ausführen einer Transact-SQL SELECT-Anweisung mit einer COMPUTE-Klausel für dieselbe Verbindung tritt ein Fehler auf.

Der SQL Server Native Client ODBC-Treiber unterstützt eine Reihe von treiberspezifischen Erweiterungen für ODBC-Verbindungsattribute, die in sqlncli.h definiert sind. Der SQL Server Native Client ODBC-Treibers erfordert möglicherweise, dass das Attribut vor der Verbindung festgelegt wird, oder es kann das Attribut ignorieren, wenn es bereits festgelegt ist. In der folgenden Tabelle sind Einschränkungen aufgeführt.

SQL Server-Attribut Festlegung vor oder nach Verbindung mit Server
SQL_COPT_SS_ANSI_NPW Vorher
SQL_COPT_SS_APPLICATION_INTENT Vorher
SQL_COPT_SS_ATTACHDBFILENAME Vorher
SQL_COPT_SS_BCP Vorher
SQL_COPT_SS_BROWSE_CONNECT Vorher
SQL_COPT_SS_BROWSE_SERVER Vorher
SQL_COPT_SS_CONCAT_NULL Vorher
SQL_COPT_SS_CONNECTION_DEAD Nach
SQL_COPT_SS_ENCRYPT Vorher
SQL_COPT_SS_ENLIST_IN_DTC Nach
SQL_COPT_SS_ENLIST_IN_XA Nach
SQL_COPT_SS_FALLBACK_CONNECT Vorher
SQL_COPT_SS_FAILOVER_PARTNER Vorher
SQL_COPT_SS_INTEGRATED_SECURITY Vorher
SQL_COPT_SS_MARS_ENABLED Vorher
SQL_COPT_SS_MULTISUBMIT_FAILOVER Vorher
SQL_COPT_SS_OLDPWD Vorher
SQL_COPT_SS_PERF_DATA Nach
SQL_COPT_SS_PERF_DATA_LOG Nach
SQL_COPT_SS_PERF_DATA_LOG_NOW Nach
SQL_COPT_SS_PERF_QUERY Nach
SQL_COPT_SS_PERF_QUERY_INTERVAL Nach
SQL_COPT_SS_PERF_QUERY_LOG Nach
SQL_COPT_SS_PRESERVE_CURSORS Vorher
SQL_COPT_SS_QUOTED_IDENT Sowohl als auch
SQL_COPT_SS_TRANSLATE Sowohl als auch
SQL_COPT_SS_TRUST_SERVER_CERTIFICATE Vorher
SQL_COPT_SS_TXN_ISOLATION Sowohl als auch
SQL_COPT_SS_USE_PROC_FOR_PREP Sowohl als auch
SQL_COPT_SS_USER_DATA Sowohl als auch
SQL_COPT_SS_WARN_ON_CP_ERROR Vorher

Die Verwendung eines Präverbindungsattributs und des entsprechenden Transact-SQL-Befehls für denselben Sitzungs-, Datenbank- oder SQL Server Zustand kann zu unerwartetem Verhalten führen. Beispiel:

SQLSetConnectAttr(SQL_COPT_SS_QUOTED_IDENT, SQL_QI_ON) // turn ON via attribute  
SQLDriverConnect(...);  
SQLExecDirect("SET QUOTED_IDENTIFIER OFF") // turn OFF via Transact-SQL  
SQLSetConnectAttr(SQL_ATTR_CURRENT_CATALOG, ...) // restores to pre-connect attribute value  

SQL_COPT_SS_ANSI_NPW

SQL_COPT_SS_ANSI_NPW aktiviert oder deaktiviert die Verwendung der ISO-Behandlung von NULL in Vergleichen und Verkettungen, beim Auffüllen von Zeichendatentypen und Warnungen. Weitere Informationen finden Sie unter SET ANSI_NULLS, SET ANSI_PADDING, SET ANSI_WARNINGS und SET CONCAT_NULL_YIELDS_NULL.

Wert BESCHREIBUNG
SQL_AD_ON Standard. Die Verbindung verwendet das ANSI-Standardverhalten für die Behandlung von NULL-Vergleichen, für das Auffüllen, für Warnungen sowie für NULL-Verkettungen.
SQL_AD_OFF Die Verbindung verwendet SQL Server definierte Behandlung von NULL, Zeichendatentypabstand und Warnungen.

Wenn Sie Verbindungspooling verwenden, sollte SQL_COPT_SS_ANSI_NPW in der Verbindungszeichenfolge und nicht mit SQLSetConnectAttr festgelegt werden. Nach dem Herstellen einer Verbindung tritt ein Fehler ohne Benachrichtigung auf, wenn dieses Attribut bei der Verwendung von Verbindungspooling geändert wird.

SQL_COPT_SS_APPLICATION_INTENT

Deklariert den Arbeitsauslastungstyp der Anwendung beim Herstellen einer Verbindung mit einem Server. Mögliche Werte sind Readonly und ReadWrite. Beispiel:

SQLSetConnectAttr(hdbc, SQL_COPT_SS_APPLICATION_INTENT, TEXT("Readonly"), SQL_NTS)  

Der Standardwert ist ReadWrite. Weitere Informationen zur Unterstützung SQL Server Native Client für Always On Verfügbarkeitsgruppen finden Sie unter SQL Server Native Client Support for High Availability, Disaster Recovery.

SQL_COPT_SS_ATTACHDBFILENAME

SQL_COPT_SS_ATTACHDBFILENAME gibt den Namen der primären Datei für eine anfügbare Datenbank an. Diese Datenbank wird angefügt und als Standarddatenbank für die Verbindung verwendet. Um SQL_COPT_SS_ATTACHDBFILENAME verwenden zu können, müssen Sie den Namen der Datenbank als Wert des Verbindungsattributes SQL_ATTR_CURRENT_CATALOG oder im DATABASE = -Parameter einer SQLDriverConnect-Instanz angeben. Wenn die Datenbank zuvor angefügt wurde, wird SQL Server sie nicht erneut anfügen.

Wert BESCHREIBUNG
SQLPOINTER auf eine Zeichenfolge Die Zeichenfolge enthält den Namen der primären Datei für die anzufügende Datenbank. Sie enthält den Namen des vollständigen Pfads der Datei.

SQL_COPT_SS_BCP

SQL_COPT_SS_BCP aktiviert Funktionen zum Massenkopieren für eine Verbindung. Weitere Informationen finden Sie unter Massenkopierfunktionen.

Wert BESCHREIBUNG
SQL_BCP_OFF Standard. Funktionen zum Massenkopieren sind für die Verbindung nicht verfügbar.
SQL_BCP_ON Funktionen zum Massenkopieren sind für die Verbindung verfügbar.

SQL_COPT_SS_BROWSE_CONNECT

Dieses Attribut wird verwendet, um das von SQLBrowseConnect zurückgegebene Resultset anzupassen. SQL_COPT_SS_BROWSE_CONNECT aktiviert oder deaktiviert die Rückgabe zusätzlicher Informationen aus einer aufgezählten instance von SQL Server. Diese Informationen können Angaben dazu enthalten, ob sich der Server in einem Cluster befindet, und die Namen anderer Instanzen sowie die Versionsnummer angeben.

Wert BESCHREIBUNG
SQL_MORE_INFO_NO Standard. Gibt eine Liste mit Servern zurück.
SQL_MORE_INFO_YES SQLBrowseConnect gibt eine erweiterte Zeichenfolge von Servereigenschaften zurück.

SQL_COPT_SS_BROWSE_SERVER

Dieses Attribut wird verwendet, um das von SQLBrowseConnect zurückgegebene Resultset anzupassen. SQL_COPT_SS_BROWSE_SERVER gibt den Servernamen an, für den SQLBrowseConnect die Informationen zurückgibt.

Wert BESCHREIBUNG
computername SQLBrowseConnect gibt eine Liste der Instanzen von SQL Server auf dem angegebenen Computer zurück. Für den Servernamen dürfen keine doppelten umgekehrten Schrägstriche (\\) verwendet werden. (Statt \\MyServer muss beispielsweise MyServer verwendet werden.)
NULL Standard. SQLBrowseConnect gibt Informationen für alle Server in der Domäne zurück.

SQL_COPT_SS_CONCAT_NULL

SQL_COPT_SS_CONCAT_NULL aktiviert oder deaktiviert die Verwendung der ISO-Behandlung von NULL beim Verketten von Zeichenfolgen. Weitere Informationen finden Sie unter SET CONCAT_NULL_YIELDS_NULL.

Wert BESCHREIBUNG
SQL_CN_ON Standard. Beim Verketten von Zeichenfolgen verwendet die Verbindung das ISO-Standardverhalten zum Behandeln von NULL-Werten.
SQL_CN_OFF Die Verbindung verwendet SQL Server definiertes Verhalten für die Behandlung von NULL-Werten beim Verketten von Zeichenfolgen.

SQL_COPT_SS_ENCRYPT

Steuert die Verschlüsselung für eine Verbindung.

Bei der Verschlüsselung wird das Zertifikat auf dem Server verwendet. Dies muss von einer Zertifizierungsstelle überprüft werden, außer das Verbindungsattribut SQL_COPT_SS_TRUST_SERVER_CERTIFICATE ist auf SQL_TRUST_SERVER_CERTIFICATE_YES festgelegt oder die Verbindungszeichenfolge enthält "TrustServerCertificate=yes". Falls eine dieser Bedingungen zutrifft, kann ein vom Server generiertes und signiertes Zertifikat zum Verschlüsseln der Verbindung verwendet werden, wenn sich kein Zertifikat auf dem Server befindet.

Wert BESCHREIBUNG
SQL_EN_ON Die Verbindung wird verschlüsselt.
SQL_EN_OFF Die Verbindung wird nicht verschlüsselt. Dies ist die Standardoption.

SQL_COPT_SS_ENLIST_IN_DTC

Der Client ruft die Microsoft Distributed Transaction Coordinator (MS DTC) OLE DB ITransactionDispenser::BeginTransaction-Methode auf, um eine MS DTC-Transaktion zu starten und ein MS DTC-Transaktionsobjekt zu erstellen, das die Transaktion darstellt. Die Anwendung ruft SQLSetConnectAttr dann mit der Option SQL_COPT_SS_ENLIST_IN_DTC auf, um das Transaktionsobjekt der ODBC-Verbindung zuzuordnen. Alle entsprechenden Datenbankaktivitäten werden unter dem Schutz der MS DTC-Transaktion durchgeführt. Die Anwendung ruft mit SQL_DTC_DONE auf SQLSetConnectAttr , um die DTC-Zuordnung der Verbindung zu beenden.

Wert BESCHREIBUNG
DTC-Objekt* Das MS DTC OLE-Transaktionsobjekt, das die Transaktion angibt, die in SQL Server exportiert werden soll.
SQL_DTC_DONE Begrenzt das Ende einer DTC-Transaktion.

SQL_COPT_SS_ENLIST_IN_XA

Um eine XA-Transaktion mit einem XA-kompatiblen Transaktionsprozessor (TP) zu starten, ruft der Client die Funktion Open Group tx_begin auf. Die Anwendung ruft SQLSetConnectAttr dann mit dem SQL_COPT_SS_ENLIST_IN_XA Parameter TRUE auf, um die XA-Transaktion der ODBC-Verbindung zuzuordnen. Alle entsprechenden Datenbankaktivitäten werden unter dem Schutz der XA-Transaktion durchgeführt. Um eine XA-Zuordnung mit einer ODBC-Verbindung zu beenden, muss der Client mit dem SQL_COPT_SS_ENLIST_IN_XA Parameter FALSE aufrufen SQLSetConnectAttr . Weitere Informationen finden Sie in der Dokumentation zu Microsoft Distributed Transaction Coordinator.

SQL_COPT_SS_FALLBACK_CONNECT

Dieses Attribut wird nicht mehr unterstützt.

SQL_COPT_SS_FAILOVER_PARTNER

Wird verwendet, um den Namen des Failoverpartners anzugeben oder abzurufen, der für die Datenbankspiegelung in SQL Server verwendet wird. Dabei handelt es sich um eine Zeichenfolge mit NULL-Beendigung, die festgelegt werden muss, bevor die Verbindung mit SQL Server anfänglich hergestellt wird.

Nachdem die Verbindung hergestellt wurde, kann die Anwendung dieses Attribut mithilfe von SQLGetConnectAttr abfragen, um die Identität des Failoverpartners zu ermitteln. Wenn der primäre Server über keinen Failoverpartner verfügt, gibt diese Eigenschaft eine leere Zeichenfolge 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.

Weitere Informationen finden Sie unter Verwenden der Datenbankspiegelung.

SQL_COPT_SS_INTEGRATED_SECURITY

SQL_COPT_SS_INTEGRATED_SECURITY erzwingt die Verwendung der Windows-Authentifizierung für die Überprüfung des Zugriffs bei der Serveranmeldung. Wenn die Windows-Authentifizierung verwendet wird, ignoriert der Treiber benutzerbezeichner- und Kennwortwerte, die im Rahmen der SQLConnect-, SQLDriverConnect- oder SQLBrowseConnect-Verarbeitung bereitgestellt werden.

Wert BESCHREIBUNG
SQL_IS_OFF Standard. SQL Server-Authentifizierung wird verwendet, um die Benutzer-ID und das Kennwort bei der Anmeldung zu überprüfen.
SQL_IS_ON Der Windows-Authentifizierungsmodus wird verwendet, um die Zugriffsrechte eines Benutzers auf die SQL Server zu überprüfen.

SQL_COPT_SS_MARS_ENABLED

Dieses Attribut aktiviert oder deaktiviert MARS (Multiple Active Result Sets). MARS ist standardmäßig deaktiviert. Dieses Attribut sollte vor dem Herstellen einer Verbindung mit SQL Server festgelegt werden. Sobald die Verbindung SQL Server geöffnet wurde, bleibt MARS für die Lebensdauer der Verbindung aktiviert oder deaktiviert.

Wert BESCHREIBUNG
SQL_MARS_ENABLED_NO Standard. MARS (Multiple Active Result Sets) ist deaktiviert.
SQL_MARS_ENABLED_YES MARS ist aktiviert.

Weitere Informationen zu MARS finden Sie unter Using Multiple Active Result Sets (MARS).

SQL_COPT_SS_MULTISUBNET_FAILOVER

Wenn Ihre Anwendung eine Verbindung mit einer Always On Verfügbarkeitsgruppenverfügbarkeitsgruppe (Verfügbarkeitsgruppen) in verschiedenen Subnetzen herstellt, konfiguriert diese Verbindungseigenschaft SQL Server Native Client, um eine schnellere Erkennung und Verbindung mit dem (derzeit) aktiven Server zu ermöglichen. Beispiel:

SQLSetConnectAttr(hdbc, SQL_COPT_SS_MULTISUBMIT_FAILOVER, SQL_IS_ON, SQL_IS_INTEGER)  

Weitere Informationen zur Unterstützung SQL Server Native Client für Always On Verfügbarkeitsgruppen finden Sie unter SQL Server Native Client Support for High Availability, Disaster Recovery.

Wert BESCHREIBUNG
SQL_IS_ON SQL Server Native Client ermöglicht eine schnellere Wiederherstellung der Verbindung, wenn ein Failover vorliegt.
SQL_IS_OFF SQL Server Native Client ermöglicht keine schnellere Wiederherstellung der Verbindung, wenn ein Failover vorliegt.

SQL_COPT_SS_OLDPWD

Der Ablauf von Kennwörtern bei der SQL Server-Authentifizierung wurde mit SQL Server 2005 eingeführt. Das SQL_COPT_SS_OLDPWD-Attribut wurde hinzugefügt, damit der Client sowohl das alte als auch das neue Kennwort für die Verbindung angeben kann. Wenn diese Eigenschaft festgelegt ist, verwendet der Anbieter für die erste Verbindung oder für nachfolgende Verbindungen keinen Verbindungspool, da die Verbindungszeichenfolge das "alte Kennwort" enthält, das inzwischen geändert wurde.

Weitere Informationen finden Sie unter Programmgesteuertes Ändern von Kennwörtern.

Wert BESCHREIBUNG
SQL_COPT_SS_OLD_PASSWORD SQLPOINTER auf eine Zeichenfolge, die das alte Kennwort enthält. Dieser Wert ist lesegeschützt und muss vor der Verbindung mit dem Server festgelegt werden.

SQL_COPT_SS_PERF_DATA

SQL_COPT_SS_PERF_DATA startet oder beendet die Protokollierung von Leistungsdaten. Der Name der Datenprotokolldatei muss vor Beginn der Datenprotokollierung festgelegt werden. Siehe SQL_COPT_SS_PERF_DATA_LOG weiter unten.

Wert BESCHREIBUNG
SQL_PERF_START Sorgt dafür, dass der Treiber mit dem Aufzeichnen von Leistungsdaten beginnt.
SQL_PERF_STOP Sorgt dafür, dass die Leistungsindikatoren die Aufzeichnung von Leistungsdaten beenden.

Weitere Informationen finden Sie unter SQLGetConnectAttr.

SQL_COPT_SS_PERF_DATA_LOG

SQL_COPT_SS_PERF_DATA_LOG weist den Namen der Protokolldatei zu, der verwendet wird, um Leistungsdaten aufzuzeichnen. Der Name der Protokolldatei ist je nach der Kompilierung der Anwendung eine auf NULL endende ANSI- oder Unicode-Zeichenfolge. Das StringLength-Argument sollte SQL_NTS werden.

SQL_COPT_SS_PERF_DATA_LOG_NOW

SQL_COPT_SS_PERF_DATA_LOG_NOW weist den Treiber an, einen Statistikprotokolleintrag auf den Datenträger zu schreiben. Das StringLength-Argument sollte SQL_NTS werden.

SQL_COPT_SS_PERF_QUERY

SQL_COPT_SS_PERF_QUERY startet oder beendet die Protokollierung für Abfragen mit langer Ausführungszeit. Der Name der Abfrageprotokolldatei muss vor Beginn der Protokollierung angegeben werden. Die Anwendung kann die "lange Ausführungszeit" durch Festlegen des Intervalls für die Protokollierung definieren.

Wert BESCHREIBUNG
SQL_PERF_START Startet die Protokollierung von Abfragen mit langer Ausführungszeit.
SQL_PERF_STOP Beendet die Protokollierung von Abfragen mit langer Ausführungszeit.

Weitere Informationen finden Sie unter SQLGetConnectAttr.

SQL_COPT_SS_PERF_QUERY_INTERVAL

SQL_COPT_SS_PERF_QUERY_INTERVAL legt den Schwellenwert für die Abfrageprotokollierung in Millisekunden fest. Abfragen, die nicht innerhalb des Schwellenwertes aufgelöst werden, werden in der Protokolldatei für Abfragen mit langer Ausführungszeit aufgezeichnet. Für den Abfrageschwellenwert gibt es keinen oberen Grenzwert. Bei einem Abfrageschwellenwert von Null werden alle Abfragen protokolliert.

SQL_COPT_SS_PERF_QUERY_LOG

SQL_COPT_SS_PERF_QUERY_LOG weist den Namen einer Protokolldatei für die Aufzeichnung von Daten für eine Abfrage mit langer Ausführungszeit zu. Der Name der Protokolldatei ist je nach der Kompilierung der Anwendung eine auf NULL endende ANSI- oder Unicode-Zeichenfolge. Das StringLength-Argument sollte SQL_NTS oder die Länge der Zeichenfolge in Bytes sein.

SQL_COPT_SS_PRESERVE_CURSORS

Mit diesem Attribut können Sie abfragen und festlegen, ob die Verbindung beim Durchführen eines Commits/Rollbacks für eine Transaktion den bzw. die Cursor beibehält. Die Einstellung ist entweder SQL_PC_ON oder SQL_PC_OFF. Der Standardwert ist SQL_PC_OFF. Diese Einstellung steuert, ob der Treiber die Cursor für Sie schließt, wenn Sie SQLEndTran (oder SQLTransact) aufrufen.

Wert BESCHREIBUNG
SQL_PC_OFF Standard. Cursor werden geschlossen, wenn eine Transaktion mithilfe von SQLEndTran committet oder ein Rollback ausgeführt wird.
SQL_PC_ON Cursor werden nicht geschlossen, wenn eine Transaktion mit SQLEndTran committet oder ein Rollback ausgeführt wird, außer wenn ein statischer Cursor oder ein Keysetcursor im asynchronen Modus verwendet wird. Wenn ein Rollback ausgegeben wird und das Auffüllen des Cursors noch nicht abgeschlossen ist, wird der Cursor geschlossen.

SQL_COPT_SS_QUOTED_IDENT

SQL_COPT_SS_QUOTED_IDENT lässt Bezeichner in Anführungszeichen in ODBC- und Transact-SQL-Anweisungen zu, die für die Verbindung übermittelt werden. Durch Die Angabe von Anführungszeichen lässt der SQL Server Native Client ODBC-Treiber ansonsten ungültige Objektnamen zu, z. B. "Meine Tabelle", die ein Leerzeichen im Bezeichner enthält. Weitere Informationen finden Sie unter SET QUOTED_IDENTIFIER.

Wert BESCHREIBUNG
SQL_QI_OFF Die SQL Server Verbindung lässt in übermitteltem Transact-SQL keine Anführungszeichen zu.
SQL_QI_ON Standard. Die Verbindung lässt Anführungszeichen in übermitteltem Transact-SQL zu.

SQL_COPT_SS_TRANSLATE

SQL_COPT_SS_TRANSLATE bewirkt, dass der Treiber beim Austausch von MBCS-Daten Zeichen zwischen den Client- und Servercodeseiten übersetzt. Das Attribut wirkt sich nur auf daten aus, die in SQL Server char-, varchar- und textspalten gespeichert sind.

Wert BESCHREIBUNG
SQL_XL_OFF Der Treiber übersetzt beim Austausch von Zeichendaten zwischen dem Client und dem Server keine Zeichen von einer Codeseite in eine andere.
SQL_XL_ON Standard. Der Treiber übersetzt beim Austausch von Zeichendaten zwischen dem Client und dem Server Zeichen von einer Codeseite in eine andere. Der Treiber konfiguriert die Zeichenübersetzung automatisch und ermittelt dabei die auf dem Server installierte sowie die vom Client verwendete Codeseite.

SQL_COPT_SS_TRUST_SERVER_CERTIFICATE

SQL_COPT_SS_TRUST_SERVER_CERTIFICATE bewirkt, dass der Treiber bei der Verwendung der Verschlüsselung die Zertifikatüberprüfung aktiviert oder deaktiviert. Bei diesem Attribut handelt es sich um einen Lese-/Schreibwert. Wenn er nach dem Herstellen einer Verbindung festgelegt wird, hat er jedoch keine Auswirkungen.

Clientanwendungen können diese Eigenschaft abfragen, nachdem eine Verbindung zur Feststellung der tatsächlich verwendeten Verschlüsselungs- und Validierungseigenschaften geöffnet wurde.

Wert BESCHREIBUNG
SQL_TRUST_SERVER_CERTIFICATE_NO Standard. Verschlüsselung ohne Zertifikatüberprüfung wird nicht aktiviert.
SQL_TRUST_SERVER_CERTIFICATE_YES Verschlüsselung ohne Zertifikatüberprüfung wird aktiviert.

SQL_COPT_SS_TXN_ISOLATION

SQL_COPT_SS_TXN_ISOLATION legt das SQL Server spezifische Momentaufnahme Isolationsattribut fest. Momentaufnahmeisolation kann nicht mit SQL_ATTR_TXN_ISOLATION festgelegt werden, da der Wert SQL Server spezifisch ist. Sie kann jedoch mit SQL_ATTR_TXN_ISOLATION oder mit SQL_COPT_SS_TXN_ISOLATION abgerufen werden.

Wert BESCHREIBUNG
SQL_TXN_SS_SNAPSHOT Gibt an, dass Sie von einer Transaktion aus keine Änderungen sehen können, die an anderen Transaktionen vorgenommen wurden, und dass Sie Änderungen auch dann nicht sehen können, wenn Sie diese erneut abfragen.

Weitere Informationen zur Momentaufnahme Isolation finden Sie unter Arbeiten mit Momentaufnahmeisolation.

SQL_COPT_SS_USE_PROC_FOR_PREP

Dieses Attribut wird nicht mehr unterstützt.

SQL_COPT_SS_USER_DATA

SQL_COPT_SS_USER_DATA legt den Benutzerdatenzeiger fest. Benutzerdaten werden im clienteigenen Arbeitsspeicher gespeichert und pro Verbindung aufgezeichnet.

Weitere Informationen finden Sie unter SQLGetConnectAttr.

SQL_COPT_SS_WARN_ON_CP_ERROR

Dieses Attribut legt fest, ob eine Warnung angezeigt wird, wenn bei der Konvertierung einer Codeseite Daten verloren gehen. Dies gilt nur für Daten, die vom Server stammen.

Wert BESCHREIBUNG
SQL_WARN_YES Generiert Warnungen, wenn während der Codepagekonvertierung Daten verloren gehen.
SQL_WARN_NO (Standard) Generiert keine Warnungen, wenn während der Codepagekonvertierung Daten verloren gehen.

SQLSetConnectAttr-Unterstützung für Dienstprinzipalnamen (SPNs)

SQLSetConnectAttr kann verwendet werden, um den Wert der neuen Verbindungsattribute SQL_COPT_SS_SERVER_SPN und SQL_COPT_SS_FAILOVER_PARTNER_SPN festzulegen. Diese Attribute können nicht festgelegt werden, wenn die Verbindung geöffnet ist. Wenn Sie versuchen, diese Attribute bei geöffneter Verbindung festzulegen, wird der Fehler HY011 mit der Meldung "Der Vorgang ist zu diesem Zeitpunkt ungültig" zurückgegeben. (SQLSetConnectOption kann auch verwendet werden, um diese Werte festzulegen.)

Weitere Informationen zu SPNs finden Sie unter Dienstprinzipalnamen (Service Principal Names, SPNs) in Clientverbindungen (ODBC).

SQL_COPT_SS_CONNECTION_DEAD

Dieses Attribut ist schreibgeschützt.

Weitere Informationen zu SQL_COPT_SS_CONNECTION_DEAD finden Sie unter SQLGetConnectAttr und Herstellen einer Verbindung mit einer Datenquelle (ODBC).

Beispiel

In diesem Beispiel werden Leistungsdaten protokolliert.

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...  

Weitere Informationen

SQLSetConnectAttr-Funktion
ODBC API Implementation Details
Bulk Copy Functions
SET ANSI_NULLS (Transact-SQL)
SET ANSI_PADDING (Transact-SQL)
SET ANSI_WARNINGS (Transact-SQL)
SET CONCAT_NULL_YIELDS_NULL (Transact-SQL)
SET QUOTED_IDENTIFIER (Transact-SQL)
SQLPrepare-Funktion
SQLGetInfo