SQLSetConnectAttr

S’applique à : SQL Server Azure SQL Database Azure SQL Managed Instance Azure Synapse Analytics Analytics Platform System (PDW)

Le pilote ODBC SQL Server Native Client ignore le paramètre de SQL_ATTR_CONNECTION_TIMEOUT.

SQL_ATTR_TRANSLATE_LIB est également ignoré ; la spécification d'une autre bibliothèque de traduction n'est pas prise en charge. Pour permettre aux applications d’être facilement transférées pour utiliser un pilote Microsoft ODBC pour SQL Server, toute valeur définie avec SQL_ATTR_TRANSLATE_LIB sera copiée dans et hors d’une mémoire tampon dans le Gestionnaire de pilotes.

Le pilote ODBC SQL Server Native Client implémente l’isolation de transaction de lecture reproductible comme sérialisable.

SQL Server 2005 (9.x) a introduit la prise en charge d’un nouvel attribut d’isolation des transactions, SQL_COPT_SS_TXN_ISOLATION. L'attribution de la valeur SQL_TXN_SS_SNAPSHOT à SQL_COPT_SS_TXN_ISOLATION indique que la transaction aura lieu avec le niveau d'isolement d'instantané.

Remarque

SQL_ATTR_TXN_ISOLATION peut être utilisé pour définir tous les autres niveaux d'isolement à l'exception de SQL_TXN_SS_SNAPSHOT. Si vous souhaitez utiliser le niveau d'isolement d'instantané, vous devez définir SQL_TXN_SS_SNAPSHOT par le biais de SQL_COPT_SS_TXN_ISOLATION. Toutefois, vous pouvez récupérer le niveau d'isolement en utilisant SQL_ATTR_TXN_ISOLATION ou SQL_COPT_SS_TXN_ISOLATION.

La promotion des attributs d'instruction ODBC en attributs de connexion peut avoir des conséquences inattendues. Les attributs d'instruction qui demandent des curseurs côté serveur pour le traitement du jeu de résultats peuvent être promus pour la connexion. Par exemple, affecter à l'attribut d'instruction ODBC SQL_ATTR_CONCURRENCY une valeur plus restrictive que la valeur SQL_CONCUR_READ_ONLY par défaut conduit le pilote à utiliser des curseurs dynamiques pour toutes les instructions soumises sur la connexion. L'exécution d'une fonction de catalogue ODBC sur une instruction sur la connexion retourne SQL_SUCCESS_WITH_INFO et un enregistrement de diagnostic qui indique que le comportement du curseur a été converti en lecture seule. La tentative d'exécution d'une instruction Transact-SQL SELECT contenant une clause COMPUTE sur la même connexion échoue.

Le pilote ODBC SQL Server Native Client prend en charge un certain nombre d’extensions spécifiques au pilote pour les attributs de connexion ODBC définis dans sqlncli.h. Le pilote ODBC SQL Server Native Client peut exiger que l’attribut soit défini avant la connexion, ou il peut ignorer l’attribut s’il est déjà défini. Le tableau ci-dessous répertorie les restrictions.

Attribut SQL Server Défini avant ou après la connexion au serveur
SQL_COPT_SS_ANSI_NPW Avant
SQL_COPT_SS_APPLICATION_INTENT Avant
SQL_COPT_SS_ATTACHDBFILENAME Avant
SQL_COPT_SS_BCP Avant
SQL_COPT_SS_BROWSE_CONNECT Avant
SQL_COPT_SS_BROWSE_SERVER Avant
SQL_COPT_SS_CONCAT_NULL Avant
SQL_COPT_SS_CONNECTION_DEAD Après
SQL_COPT_SS_ENCRYPT Avant
SQL_COPT_SS_ENLIST_IN_DTC Après
SQL_COPT_SS_ENLIST_IN_XA Après
SQL_COPT_SS_FALLBACK_CONNECT Avant
SQL_COPT_SS_FAILOVER_PARTNER Avant
SQL_COPT_SS_INTEGRATED_SECURITY Avant
SQL_COPT_SS_MARS_ENABLED Avant
SQL_COPT_SS_MULTISUBNET_FAILOVER Avant
SQL_COPT_SS_OLDPWD Avant
SQL_COPT_SS_PERF_DATA Après
SQL_COPT_SS_PERF_DATA_LOG Après
SQL_COPT_SS_PERF_DATA_LOG_NOW Après
SQL_COPT_SS_PERF_QUERY Après
SQL_COPT_SS_PERF_QUERY_INTERVAL Après
SQL_COPT_SS_PERF_QUERY_LOG Après
SQL_COPT_SS_PRESERVE_CURSORS Avant
SQL_COPT_SS_QUOTED_IDENT Vous pouvez soit utiliser
SQL_COPT_SS_TRANSLATE Vous pouvez soit utiliser
SQL_COPT_SS_TRUST_SERVER_CERTIFICATE Avant
SQL_COPT_SS_TXN_ISOLATION Vous pouvez soit utiliser
SQL_COPT_SS_USE_PROC_FOR_PREP Vous pouvez soit utiliser
SQL_COPT_SS_USER_DATA Vous pouvez soit utiliser
SQL_COPT_SS_WARN_ON_CP_ERROR Avant

L’utilisation d’un attribut de pré-connexion et de la commande Transact-SQL équivalente pour la même session, la base de données ou l’état SQL Server peuvent produire un comportement inattendu. Par exemple,

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 active ou désactive l'utilisation de la gestion ISO des valeurs NULL dans les comparaisons et la concaténation, le remplissage des types de données caractère et les avertissements. Pour plus d'informations, consultez SET ANSI_NULLS, SET ANSI_PADDING, SET ANSI_WARNINGS et SET CONCAT_NULL_YIELDS_NULL.

Valeur Description
SQL_AD_ON Par défaut. La connexion utilise le comportement par défaut ANSI pour gérer les comparaisons NULL, le remplissage, les avertissements et les concaténations NULL.
SQL_AD_OFF La connexion utilise la gestion définie par SQL Server de NULL, le remplissage des types de données caractères et les avertissements.

Si vous utilisez le regroupement de connexions, SQL_COPT_SS_ANSI_NPW doit être défini dans le chaîne de connexion, plutôt qu’avec SQLSetConnectAttr. Après avoir établi une connexion, toute tentative de modification de cet attribut échouera silencieusement lorsque le regroupement de connexions est utilisé.

SQL_COPT_SS_APPLICATION_INTENT

Déclare le type de la charge de travail de l'application lors de la connexion à un serveur. Les valeurs possibles sont Readonly et ReadWrite. Par exemple :

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

La valeur par défaut est ReadWrite. Pour plus d’informations sur la prise en charge de SQL Server Native Client pour les groupes de disponibilité Always On, consultez prise en charge de SQL Server Native Client pour la haute disponibilité, reprise d’activité après sinistre.

SQL_COPT_SS_ATTACHDBFILENAME

SQL_COPT_SS_ATTACHDBFILENAME spécifie le nom du fichier primaire d'une base de données pouvant être attachée. Cette base de données est attachée et devient la base de données par défaut de la connexion. Pour utiliser SQL_COPT_SS_ATTACHDBFILENAME vous devez spécifier le nom de la base de données comme valeur de l’attribut de connexion SQL_ATTR_CURRENT_CATALOG ou dans le paramètre DATABASE = d’un SQLDriverConnect. Si la base de données a été précédemment attachée, SQL Server ne la détachera pas.

Valeur Description
SQLPOINTER vers une chaîne de caractères La chaîne contient le nom du fichier primaire de la base de données à attacher. Incluez le chemin d'accès complet du fichier.

SQL_COPT_SS_BCP

SQL_COPT_SS_BCP active les fonctions de copie en bloc sur une connexion. Pour plus d’informations, consultez Fonctions de copie en bloc.

Valeur Description
SQL_BCP_OFF Par défaut. Les fonctions de copie en bloc ne sont pas disponibles sur la connexion.
SQL_BCP_ON Les fonctions de copie en bloc sont disponibles sur la connexion.

SQL_COPT_SS_BROWSE_CONNECT

Cet attribut est utilisé pour personnaliser le jeu de résultats retourné par SQLBrowseConnect. SQL_COPT_SS_BROWSE_CONNECT active ou désactive le retour d’informations supplémentaires à partir d’une instance énumérée de SQL Server. Cela peut inclure des informations, comme par exemple si le serveur est un cluster, les noms d'instances différentes et le numéro de version.

Valeur Description
SQL_MORE_INFO_NO Par défaut. Retourne une liste de serveurs.
SQL_MORE_INFO_YES SQLBrowseConnect retourne une chaîne étendue de propriétés de serveur.

SQL_COPT_SS_BROWSE_SERVER

Cet attribut est utilisé pour personnaliser le jeu de résultats retourné par SQLBrowseConnect. SQL_COPT_SS_BROWSE_SERVER spécifie le nom du serveur pour lequel SQLBrowseConnect retourne les informations.

Valeur Description
computername SQLBrowseConnect retourne une liste d’instances de SQL Server sur l’ordinateur spécifié. Les barres obliques inverses doubles (\\) ne doivent pas être utilisées pour le nom du serveur (par exemple, au lieu de \\MyServer, MyServer doit être utilisé).
NULL Par défaut. SQLBrowseConnect retourne des informations pour tous les serveurs du domaine.

SQL_COPT_SS_CONCAT_NULL

SQL_COPT_SS_CONCAT_NULL active ou désactive l'utilisation de la gestion ISO des valeurs NULL lors de la concaténation de chaînes. Pour plus d’informations, voir SET CONCAT_NULL_YIELDS_NULL.

Valeur Description
SQL_CN_ON Par défaut. La connexion utilise le comportement par défaut ISO pour gérer les valeurs NULL lors de la concaténation de chaînes.
SQL_CN_OFF La connexion utilise le comportement défini par SQL Server pour gérer les valeurs NULL lors de la concaténation de chaînes.

SQL_COPT_SS_ENCRYPT

Contrôle le chiffrement pour une connexion.

Le chiffrement utilise le certificat sur le serveur. Cela doit être vérifié par une autorité de certification, à moins que l'attribut de connexion SQL_COPT_SS_TRUST_SERVER_CERTIFICATE ait la valeur SQL_TRUST_SERVER_CERTIFICATE_YES ou que la chaîne de connexion contienne "TrustServerCertificate=yes". Si l'une ou l'autre de ces conditions est vraie, un certificat généré et signé par le serveur peut être utilisé pour chiffrer la connexion si aucun certificat n'est présent sur le serveur.

Valeur Description
SQL_EN_ON La connexion sera chiffrée.
SQL_EN_OFF La connexion ne sera pas chiffrée. Il s’agit de la valeur par défaut.

SQL_COPT_SS_ENLIST_IN_DTC

Le client appelle la méthode OLE DB ITransactionDispenser ::BeginTransaction de Microsoft Distributed Transaction Coordinator (MS DTC) pour commencer une transaction MS DTC et créer un objet de transaction MS DTC qui représente la transaction. L’application appelle ensuite SQLSetConnectAttr avec l’option SQL_COPT_SS_ENLIST_IN_DTC pour associer l’objet transactionnel à la connexion ODBC. Toute l'activité de base de données connexe sera effectuée sous la protection de la transaction MS DTC. L’application appelle SQLSetConnectAttr avec SQL_DTC_DONE pour mettre fin à l’association DTC de la connexion.

Valeur Description
Objet DTC* Objet de transaction OLE MS DTC qui spécifie la transaction à exporter vers SQL Server.
SQL_DTC_DONE Délimite la fin d'une transaction DTC.

SQL_COPT_SS_ENLIST_IN_XA

Pour commencer une transaction XA avec un processeur de transactions conforme XA (TP), le client appelle la fonction Open Group tx_begin . L’application appelle ensuite SQLSetConnectAttr avec un paramètre SQL_COPT_SS_ENLIST_IN_XA true pour associer la transaction XA à la connexion ODBC. Toute l'activité de base de données connexe sera effectuée sous la protection de la transaction XA. Pour mettre fin à une association XA avec une connexion ODBC, le client doit appeler SQLSetConnectAttr avec un paramètre SQL_COPT_SS_ENLIST_IN_XA false. Pour plus d'informations, consultez la documentation sur Microsoft Distributed Transaction Coordinator.

SQL_COPT_SS_FALLBACK_CONNECT

Cet attribut n'est plus pris en charge.

SQL_COPT_SS_FAILOVER_PARTNER

Utilisé pour spécifier ou récupérer le nom du partenaire de basculement utilisé pour la mise en miroir de bases de données dans SQL Server, et il s’agit d’une chaîne de caractères terminée null qui doit être définie avant la création initiale de la connexion à SQL Server.

Après avoir établi la connexion, l’application peut interroger cet attribut à l’aide de SQLGetConnectAttr pour déterminer l’identité du partenaire de basculement. Si le serveur principal n'a pas de partenaire de basculement, cette propriété retourne une chaîne vide. Cela permet à une application intelligente de mettre en cache le serveur de sauvegarde le plus récent ; toutefois, de telles applications doivent prendre en compte le fait que les informations sont mises à jour uniquement lorsque la connexion est établie au préalable, ou réinitialisée en cas de regroupement, et que ces informations peuvent devenir obsolètes dans le cas de connexions à long terme.

Pour plus d’informations, consultez Utilisation de la mise en miroir de bases de données.

SQL_COPT_SS_INTEGRATED_SECURITY

SQL_COPT_SS_INTEGRATED_SECURITY force l'utilisation de l'authentification Windows pour la validation de l'accès sur la connexion au serveur. Lorsque l’authentification Windows est utilisée, le pilote ignore les valeurs d’identificateur d’utilisateur et de mot de passe fournies dans le cadre du traitement SQLConnect, SQLDriverConnect ou SQLBrowseConnect .

Valeur Description
SQL_IS_OFF Par défaut. L’authentification SQL Server est utilisée pour valider l’identificateur de l’utilisateur et le mot de passe lors de la connexion.
SQL_IS_ON Le mode d’authentification Windows est utilisé pour valider les droits d’accès d’un utilisateur au serveur SQL Server.

SQL_COPT_SS_MARS_ENABLED

Cet attribut active ou désactive MARS (Multiple Active Result Sets). MARS est désactivé par défaut. Cet attribut doit être défini avant d’établir une connexion à SQL Server. Une fois que la connexion SQL Server est ouverte, MARS reste activé ou désactivé pour la durée de vie de la connexion.

Valeur Description
SQL_MARS_ENABLED_NO Par défaut. MARS (Multiple Active Result Sets) est désactivé.
SQL_MARS_ENABLED_YES MARS est activé.

Pour plus d’informations sur MARS, consultez Utilisation de plusieurs jeux de résultats actifs (MARS).

SQL_COPT_SS_MULTISUBNET_FAILOVER

Si votre application se connecte à un groupe de disponibilité Always On sur différents sous-réseaux, cette propriété de connexion configure SQL Server Native Client pour fournir une détection et une connexion plus rapides au serveur actif (actuellement). Par exemple :

SQLSetConnectAttr(hdbc, SQL_COPT_SS_MULTISUBNET_FAILOVER, SQL_IS_ON, SQL_IS_INTEGER)  

Pour plus d’informations sur la prise en charge de SQL Server Native Client pour les groupes de disponibilité Always On, consultez prise en charge de SQL Server Native Client pour la haute disponibilité, reprise d’activité après sinistre.

Valeur Description
SQL_IS_ON SQL Server Native Client fournit une reconnexion plus rapide en cas de basculement.
SQL_IS_OFF SQL Server Native Client ne fournit pas de reconnexion plus rapide en cas de basculement.

SQL_COPT_SS_OLDPWD

L’expiration du mot de passe pour l’authentification SQL Server a été introduite dans SQL Server 2005 (9.x). L'attribut SQL_COPT_SS_OLDPWD a été ajouté pour permettre au client de fournir à la fois l'ancien et le nouveau mots de passe pour la connexion. Lorsque cette propriété est définie, le fournisseur n'utilisera pas le pool de connexions pour la première connexion ou pour les connexions suivantes, puisque la chaîne de connexion contiendra l'« ancien mot de passe » qui a maintenant changé.

Pour plus d’informations, consultez Modification des mots de passe par programme.

Valeur Description
SQL_COPT_SS_OLD_PASSWORD SQLPOINTER vers une chaîne de caractères contenant l'ancien mot de passe. Cette valeur est en écriture seule et doit être définie avant la connexion au serveur.

SQL_COPT_SS_PERF_DATA

SQL_COPT_SS_PERF_DATA lance ou arrête la journalisation des données de performances. Il convient de définir le nom du fichier journal des données avant de commencer la journalisation des données. Consultez SQL_COPT_SS_PERF_DATA_LOG ci-dessous.

Valeur Description
SQL_PERF_START Démarre le pilote qui échantillonne les données de performances.
SQL_PERF_STOP Arrête les compteurs d'échantillonnage des données de performances.

Pour plus d’informations, consultez SQLGetConnectAttr.

SQL_COPT_SS_PERF_DATA_LOG

SQL_COPT_SS_PERF_DATA_LOG attribue le nom du fichier journal utilisé pour enregistrer les données de performances. Le nom du fichier journal est une chaîne ANSI ou Unicode terminée par le caractère Null qui dépend de la compilation de l'application. L’argument StringLength doit être SQL_NTS.

SQL_COPT_SS_PERF_DATA_LOG_NOW

SQL_COPT_SS_PERF_DATA_LOG_NOW indique au pilote d'écrire une entrée de journal de statistiques sur le disque. L’argument StringLength doit être SQL_NTS.

SQL_COPT_SS_PERF_QUERY

SQL_COPT_SS_PERF_QUERY démarre ou arrête la journalisation pour les requêtes longues. Il convient de fournir le nom du fichier journal des requêtes avant de commencer la journalisation. L'application peut définir "longues" en définissant l'intervalle pour la journalisation.

Valeur Description
SQL_PERF_START Démarre la journalisation des requêtes longues.
SQL_PERF_STOP Arrête la journalisation des requêtes longues.

Pour plus d’informations, consultez SQLGetConnectAttr.

SQL_COPT_SS_PERF_QUERY_INTERVAL

SQL_COPT_SS_PERF_QUERY_INTERVAL définit le seuil de journalisation des requêtes en millisecondes. Les requêtes qui ne sont pas résolues dans cette limite sont enregistrées dans le fichier journal des requêtes longues. Le seuil de requête ne présente pas de limite supérieure. Une valeur de seuil de requête égale à zéro entraîne la consignation de toutes les requêtes.

SQL_COPT_SS_PERF_QUERY_LOG

SQL_COPT_SS_PERF_QUERY_LOG attribue le nom d'un fichier journal pour la journalisation des données des requêtes longues. Le nom du fichier journal est une chaîne ANSI ou Unicode terminée par le caractère Null qui dépend de la compilation de l'application. L’argument StringLength doit être SQL_NTS ou la longueur de la chaîne en octets.

SQL_COPT_SS_PRESERVE_CURSORS

Cet attribut vous permet d'interroger et de définir si la connexion conservera ou non le ou les curseurs lorsque vous validez/annulez une transaction. Le paramètre est SQL_PC_ON ou SQL_PC_OFF. La valeur par défaut est SQL_PC_OFF. Ce paramètre détermine si le pilote ferme le ou les curseurs pour vous lorsque vous appelez SQLEndTran (ou SQLTransact).

Valeur Description
SQL_PC_OFF Par défaut. Les curseurs sont fermés lorsque la transaction est validée ou restaurée à l’aide de SQLEndTran.
SQL_PC_ON Les curseurs ne sont pas fermés lorsque la transaction est validée ou restaurée à l’aide de SQLEndTran, sauf lors de l’utilisation d’un curseur statique ou de jeu de clés en mode asynchrone. Si une annulation est effectuée alors que le remplissage du curseur n'est pas complet, le curseur est fermé.

SQL_COPT_SS_QUOTED_IDENT

SQL_COPT_SS_QUOTED_IDENT autorise les identificateurs entre guillemets dans les instructions ODBC et Transact-SQL soumises sur la connexion. En fournissant des identificateurs entre guillemets, le pilote ODBC SQL Server Native Client autorise d’autres noms d’objets non valides tels que « My Table », qui contient un espace dans l’identificateur. Pour plus d’informations, voir SET QUOTED_IDENTIFIER.

Valeur Description
SQL_QI_OFF La connexion SQL Server n’autorise pas les identificateurs entre guillemets dans Transact-SQL soumis.
SQL_QI_ON Par défaut. La connexion autorise les identificateurs entre guillemets dans Transact-SQL soumis.

SQL_COPT_SS_TRANSLATE

SQL_COPT_SS_TRANSLATE conduit le pilote à traduire les caractères entre les pages de codes client et serveur lorsque des données MBCS sont échangées. L’attribut affecte uniquement les données stockées dans les colonnes char, varchar et texte SQL Server.

Valeur Description
SQL_XL_OFF Le pilote ne traduit pas les caractères d'une page de codes à une autre dans les données de type caractère échangées entre le client et le serveur.
SQL_XL_ON Par défaut. Le pilote traduit les caractères d'une page de codes à une autre dans les données de type caractère échangées entre le client et le serveur. Le pilote configure automatiquement la traduction du caractère, déterminant la page de codes installée sur le serveur et celle utilisée par le client.

SQL_COPT_SS_TRUST_SERVER_CERTIFICATE

SQL_COPT_SS_TRUST_SERVER_CERTIFICATE conduit le pilote à activer ou désactiver la validation de certificat lors de l'utilisation du chiffrement. Cet attribut est une valeur en lecture/écriture, mais le définir après l'établissement d'une connexion n'a aucun effet.

Les applications clientes peuvent interroger cette propriété après qu'une connexion a été ouverte pour déterminer le chiffrement effectif et les paramètres de validation utilisés.

Valeur Description
SQL_TRUST_SERVER_CERTIFICATE_NO Par défaut. Le chiffrement sans validation de certificat n'est pas activé.
SQL_TRUST_SERVER_CERTIFICATE_YES Le chiffrement sans validation de certificat est activé.

SQL_COPT_SS_TXN_ISOLATION

SQL_COPT_SS_TXN_ISOLATION définit l’attribut d’isolation d’instantané spécifique à SQL Server. Impossible de définir l’isolation d’instantané à l’aide de SQL_ATTR_TXN_ISOLATION, car la valeur est spécifique à SQL Server. Toutefois, elle peut être extraite à l'aide de SQL_ATTR_TXN_ISOLATION ou de SQL_COPT_SS_TXN_ISOLATION.

Valeur Description
SQL_TXN_SS_SNAPSHOT Indique qu'il n'est pas possible de voir à partir d'une transaction les modifications apportées dans d'autres transactions, et cela même si vous réexécutez la requête.

Pour plus d’informations sur l’isolation des instantanés, consultez Utilisation de l’isolation des instantanés.

SQL_COPT_SS_USE_PROC_FOR_PREP

Cet attribut n'est plus pris en charge.

SQL_COPT_SS_USER_DATA

SQL_COPT_SS_USER_DATA définit le pointeur de données utilisateur. Les données utilisateur correspondent à la mémoire détenue par le client et enregistrée par connexion.

Pour plus d’informations, consultez SQLGetConnectAttr.

SQL_COPT_SS_WARN_ON_CP_ERROR

Cet attribut détermine si vous obtenez un avertissement en cas de perte de données lors de la conversion d'une page de codes. Cela s'applique uniquement aux données provenant du serveur.

Valeur Description
SQL_WARN_YES Générer des avertissements lorsqu'une perte de données est constatée pendant la conversion de page de codes.
SQL_WARN_NO (Par défaut) Ne pas générer d'avertissements lorsqu'une perte de données est constatée pendant la conversion de page de codes.

Prise en charge de SQLSetConnectAttr pour les noms de principaux du service (SPN)

SQLSetConnectAttr peut être utilisé pour définir la valeur des nouveaux attributs de connexion SQL_COPT_SS_SERVER_SPN et SQL_COPT_SS_FAILOVER_PARTNER_SPN. Ces attributs ne peuvent pas être définis lorsqu'une connexion est ouverte ; si vous essayez de définir ces attributs lorsqu'une connexion est ouverte, l'erreur HY011 est retournée avec le message « Opération actuellement non valide ». (SQLSetConnectOption peut également être utilisé pour définir ces valeurs.)

Pour plus d’informations sur les SPN, consultez Les noms de principal de service (SPN) dans les connexions clientes (ODBC).

SQL_COPT_SS_CONNECTION_DEAD

Ceci est un attribut de lecture seule.

Pour plus d’informations sur SQL_COPT_SS_CONNECTION_DEAD, consultez SQLGetConnectAttr et Connexion à une source de données (ODBC).

Exemple

Cet exemple consigne les données de performances.

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

Voir aussi

SQLSetConnectAttr, fonction
Détails de l’implémentation d’API ODBC
Fonctions de copie en bloc
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, fonction
SQLGetInfo