Partager via


Création d'une application de pilote ODBC pour SQL Server Native Client

L’architecture ODBC comporte quatre composants qui exécutent les fonctions suivantes.

Composant Fonction
Application Appelle des fonctions ODBC pour communiquer avec une source de données ODBC, envoie des instructions SQL et traite les jeux de résultats.
Gestionnaire de pilote Gère la communication entre une application et tous les pilotes ODBC utilisés par l’application.
Chauffeur Traite tous les appels de fonction ODBC de l’application, se connecte à une source de données, transmet des instructions SQL de l’application à la source de données et retourne les résultats à l’application. Si nécessaire, le pilote convertit ODBC SQL de l’application en SQL natif utilisé par la source de données.
Source de données Contient toutes les informations dont un pilote a besoin pour accéder à une instance spécifique de données dans un SGBD.

Une application qui utilise le pilote ODBC SQL Server Native Client pour communiquer avec une instance de SQL Server effectue les tâches suivantes :

  • Se connecte à une source de données

  • Envoie des instructions SQL à la source de données

  • Traite les résultats des instructions de la source de données

  • Traite les erreurs et les messages

  • Termine la connexion à la source de données

Une application plus complexe écrite pour le pilote ODBC SQL Server Native Client peut également effectuer les tâches suivantes :

  • Utiliser des curseurs pour contrôler l’emplacement dans un jeu de résultats

  • Demander des opérations de validation ou de restauration pour le contrôle de transaction

  • Effectuer des transactions distribuées impliquant deux serveurs ou plus

  • Exécuter des procédures stockées sur le serveur distant

  • Appeler des fonctions de catalogue pour vous renseigner sur les attributs d’un jeu de résultats

  • Effectuer des opérations de copie en bloc

  • Gérer les opérations de données volumineuses (varchar(max), nvarchar(max) et varbinary(max)

  • Utiliser la logique de reconnexion pour faciliter le basculement lorsque la mise en miroir de bases de données est configurée

  • Données de performances de journal et requêtes de longue durée

Pour effectuer des appels de fonction ODBC, une application C ou C++ doit inclure les fichiers d’en-tête sql.h, sqlext.h et sqltypes.h. Pour effectuer des appels aux fonctions d’API du programme d’installation ODBC, une application doit inclure le fichier d’en-tête odbcinst.h. Une application ODBC Unicode doit inclure le fichier d’en-tête sqlucode.h. Les applications ODBC doivent être liées au fichier odbc32.lib. Les applications ODBC qui appellent les fonctions API du programme d’installation ODBC doivent être liées au fichier odbccp32.lib. Ces fichiers sont inclus dans le Kit de développement logiciel (SDK) de plateforme Windows.

De nombreux pilotes ODBC, notamment le pilote ODBC SQL Server Native Client, offrent des extensions ODBC spécifiques au pilote. Pour tirer parti des extensions spécifiques au pilote ODBC SQL Server Native Client, une application doit inclure le fichier d’en-tête sqlncli.h. Ce fichier d’en-tête contient :

  • Attributs de connexion spécifiques au pilote ODBC SQL Server Native Client.

  • Attributs d’instruction spécifiques au pilote ODBC SQL Server Native Client.

  • Attributs de colonne spécifiques au pilote ODBC SQL Server Native Client.

  • Types de données spécifiques à SQL Server.

  • Types de données définis par l’utilisateur spécifiques à SQL Server.

  • Types SQL Server Native Client ODBC spécifiques au pilote SQLGetInfo .

  • Champs de diagnostic du pilote ODBC SQL Server Native Client.

  • Codes de fonction dynamique de diagnostic propres à SQL Server.

  • Définitions de type C/C++ pour les types de données C natifs spécifiques à SQL Server (retournés lorsque les colonnes liées au type de données C SQL_C_BINARY).

  • Définition de type pour la structure de données SQLPERF.

  • Copie en bloc de macros et de prototypes pour prendre en charge l’utilisation de l’API de copie en bloc via une connexion ODBC.

  • Appelez les fonctions d’API de métadonnées de requête distribuées pour les listes de serveurs liés et leurs catalogues.

Toute application ODBC C ou C++ qui utilise la fonctionnalité de copie en bloc du pilote ODBC SQL Server Native Client doit être liée au fichier sqlncli11.lib. Les applications appelant les fonctions API de métadonnées de requête distribuée doivent également être liées à sqlncli11.lib. Les fichiers sqlncli.h et sqlncli11.lib sont distribués dans le cadre des outils du développeur SQL Server. Les répertoires INCLUDE et Lib SQL Server doivent se trouver dans les chemins INCLUDE et LIB du compilateur comme dans les éléments suivants :

LIB=c:\Program Files\Microsoft Data Access SDK 2.8\Libs\x86\lib;C:\Program Files\Microsoft SQL Server\100\Tools\SDK\Lib;  
INCLUDE=c:\Program Files\Microsoft Data Access SDK 2.8\inc;C:\Program Files\Microsoft SQL Server\100\Tools\SDK\Include;  

Une décision de conception prise au début du processus de création d’une application est de savoir si l’application doit avoir plusieurs appels ODBC en attente en même temps. Il existe deux méthodes pour prendre en charge plusieurs appels ODBC simultanés, qui sont décrits dans les rubriques restantes de cette section. Pour plus d’informations, consultez la référence du programmeur ODBC.

Dans cette section

Voir aussi

SQL Server Native Client (ODBC)