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