SQLDriverConnect

Le pilote ODBC SQL Server Native Client définit des attributs de connexion qui remplacent ou améliorent les mots clés de chaîne de connexion. Plusieurs mots clés de chaîne de connexion ont des valeurs par défaut spécifiées par le pilote ODBC SQL Server Native Client.

Pour obtenir la liste des mots clés disponibles dans le pilote ODBC SQL Server Native Client, consultez Utilisation de mots clés de chaîne de connexion avec SQL Server Native Client.

Pour plus d’informations sur les attributs de connexion SQL Server et les comportements par défaut des pilotes, consultez SQLSetConnectAttr.

Pour plus d’informations sur les mots clés de chaîne de connexion valides pour SQL Server Native Client, consultez Utilisation de mots clés de chaîne de connexion avec SQL Server Native Client.

Lorsque la valeur du SQLDriverConnect paramètre DriverCompletion est SQL_DRIVER_PROMPT, SQL_DRIVER_COMPLETE ou SQL_DRIVER_COMPLETE_REQUIRED, le pilote ODBC SQL Server Native Client récupère les valeurs mot clé de la boîte de dialogue affichée. Si la valeur mot clé est transmise dans la chaîne de connexion et que l’utilisateur ne modifie pas la valeur du mot clé dans la boîte de dialogue, le pilote ODBC SQL Server Native Client utilise la valeur de la chaîne de connexion. Si la valeur n'est pas définie dans la chaîne de connexion et si l'utilisateur ne procède à aucune affectation dans la boîte de dialogue, le pilote utilise la valeur par défaut.

SQLDriverConnect doit disposer d’un WindowHandle valide lorsque toute valeur DriverCompletion nécessite (ou peut nécessiter) l’affichage de la boîte de dialogue de connexion du pilote. Un handle non valide retourne SQL_ERROR.

Spécifiez le mot clé DRIVER ou DSN. ODBC indique que, de ces deux mots clés, un pilote utilise celui qui est situé le plus à gauche et ignore l'autre si les deux sont spécifiés. Si DRIVER est spécifié ou est le plus à gauche des deux, et si la valeur du SQLDriverConnect paramètre DriverCompletion est SQL_DRIVER_NOPROMPT, l’mot clé SERVER et une valeur appropriée sont requis.

Lorsque SQL_DRIVER_NOPROMPT est spécifié, les mots clés d'authentification utilisateur doivent être fournis avec des valeurs. Le pilote garantit que la chaîne « Trusted_Connection=yes » ou les mots clés UID et PWD à la fois sont disponibles.

Si la valeur du paramètre DriverCompletion est SQL_DRIVER_NOPROMPT ou SQL_DRIVER_COMPLETE_REQUIRED et que la langue ou la base de données provient de la chaîne de connexion et n’est pas valide, SQLDriverConnect retourne SQL_ERROR.

Si la valeur du paramètre DriverCompletion est SQL_DRIVER_NOPROMPT ou SQL_DRIVER_COMPLETE_REQUIRED et que la langue ou la base de données provient des définitions de source de données ODBC et n’est pas valide, SQLDriverConnect utilise la langue ou la base de données par défaut pour l’ID utilisateur spécifié et retourne SQL_SUCCESS_WITH_INFO.

Si la valeur du paramètre DriverCompletion est SQL_DRIVER_COMPLETE ou SQL_DRIVER_PROMPT et si la langue ou la base de données n’est pas valide, SQLDriverConnect réaffiche la boîte de dialogue.

SQLDriverConnect prend en charge les fonctionnalités de récupération d'urgence, haute disponibilité

Pour plus d’informations sur l’utilisation SQLDriverConnect de pour se connecter à un cluster de groupes de disponibilité Always On, consultez SQL Server Native Client prise en charge de la haute disponibilité et de la récupération d’urgence.

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

SQLDDriverConnect utilise la boîte de dialogue Connexion ODBC lorsque l’invite est activée. Celle-ci vous permet d'entrer des SPN à la fois pour le serveur principal et pour le partenaire de basculement.

SQLDriverConnect accepte les nouveaux mots clés ServerSPN de chaîne de connexion et FailoverPartnerSPN, et reconnaît les nouveaux attributs de connexion SQL_COPT_SS_SERVER_SPN et SQL_COPT_SS_FAILOVER_PARTNER_SPN.

Lorsqu'une valeur d'attribut de connexion est définie plus d'une fois, toute valeur définie par programme à priorité sur la valeur d'un DSN et sur toute valeur dans une chaîne de connexion. Une valeur dans un DSN est prioritaire par rapport à une valeur dans une chaîne de connexion.

Lorsqu’une connexion est ouverte, SQL Server Native Client définit SQL_COPT_SS_MUTUALLY_AUTHENTICATED et SQL_COPT_SS_INTEGRATED_AUTHENTICATION_METHOD sur la méthode d’authentification utilisée pour ouvrir la connexion.

Pour plus d’informations sur les SPN, consultez Noms de principaux de service (SPN) dans les connexions clientes (ODBC).

Exemples

L’appel suivant illustre la quantité minimale de données requise pour SQLDriverConnect:

SQLDriverConnect(hdbc, hwnd,  
    (SQLTCHAR*) TEXT("DRIVER={SQL Server Native Client 10};"), SQL_NTS, szOutConn,  
    MAX_CONN_OUT, &cbOutConn, SQL_DRIVER_COMPLETE);  

Les chaînes de connexion suivantes illustrent les données minimales requises lorsque la valeur du paramètre DriverCompletion est SQL_DRIVER_NOPROMPT :

"DSN=Human Resources;Trusted_Connection=yes"  
  
"FILEDSN=HR_FDSN;Trusted_Connection=yes"  
  
"DRIVER={SQL Server Native Client 10};SERVER=(local);Trusted_Connection=yes"  

Voir aussi

SQLDriverConnect, fonction
Détails de l’implémentation d’API ODBC
SET ANSI_NULLS (Transact-SQL)
SET ANSI_PADDING (Transact-SQL)
SET ANSI_WARNINGS (Transact-SQL)