Partager via


Allocation d'un handle de connexion

S’applique à :SQL ServerAzure SQL DatabaseAzure SQL Managed InstanceAzure Synapse AnalyticsAnalytics Platform System (PDW)

Pour que l'application puisse se connecter à une source de données ou à un pilote, elle doit auparavant allouer un handle de connexion. Pour ce faire, appelez SQLAllocHandle avec le paramètre HandleType défini sur SQL_HANDLE_DBC et InputHandle pointant vers un handle d’environnement initialisé.

Les caractéristiques de la connexion sont contrôlées en définissant des attributs de connexion. Par exemple, étant donné que les transactions se produisent au niveau de la connexion, le niveau d'isolation de la transaction est un attribut de connexion. De la même façon, le délai d'expiration de la connexion (c'est-à-dire le nombre de secondes s'écoulant avant l'expiration de la tentative de connexion) est un attribut de connexion.

Les attributs de connexion sont définis avec SQLSetConnectAttr et leurs paramètres actuels sont récupérés avec SQLGetConnectAttr. Si SQLSetConnectAttr est appelé avant la tentative de connexion, le Gestionnaire de pilotes ODBC stocke les attributs dans sa structure de connexion et les définit dans le pilote dans le cadre du processus de connexion. Certains attributs de connexion doivent être définis avant toute tentative de connexion de l'application ; d'autres peuvent être définis une fois la connexion établie. Par exemple, SQL_ATTR_ODBC_CURSORS doit être défini avant l'établissement d'une connexion, mais SQL_ATTR_AUTOCOMMIT peut être défini une fois la connexion établie.

Les applications s’exécutant sur SQL Server version 7.0 ou ultérieure peuvent parfois améliorer leurs performances en réinitialisant la taille des paquets réseau tds (tabulaire data stream). La taille du paquet par défaut est définie au niveau du serveur avec la valeur 4 Ko. Une taille de paquet comprise entre 4 Ko et 8 Ko offre généralement les meilleures performances. Si les tests indiquent qu'une taille de paquet différente offre de meilleures performances, l'application peut réinitialiser la taille du paquet. Les applications ODBC peuvent le faire avant de se connecter en appelant SQLSetConnectAttr avec l’option SQL_ATTR_PACKET_SIZE. Certaines applications fonctionnent mieux avec une taille de paquet plus grande, mais les gains en termes de performances sont généralement minimes pour les tailles de paquet supérieures à 8 Ko.

Le pilote ODBC SQL Server Native Client dispose d’un certain nombre d’attributs de connexion étendus qu’une application peut utiliser pour augmenter ses fonctionnalités. Certains de ces attributs contrôlent les mêmes options que celles qui peuvent être spécifiées dans les sources de données et qui sont utilisées pour remplacer n'importe quelle option définie dans une source de données. Par exemple, si une application utilise des identificateurs entre guillemets, elle peut attribuer à l'attribut SQL_COPT_SS_QUOTED_IDENT spécifique au pilote la valeur SQL_QI_ON pour faire en sorte que cette option soit toujours définie indépendamment du paramètre dans une source de données quelconque.

Voir aussi

Communication avec SQL Server (ODBC)