Remarque
L’accès à cette page requiert une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page requiert une autorisation. Vous pouvez essayer de modifier des répertoires.
La source de données ou le pilote utilisé par une application est parfois codé en dur dans l’application. Par exemple, une application personnalisée écrite par un service MIS pour transférer des données d’une source de données vers une autre contiendrait simplement les noms de ces sources de données. L’application ne fonctionne simplement pas avec d’autres sources de données. Un autre exemple est une application verticale, telle qu’une application utilisée pour l’entrée de commande. Une telle application utilise toujours la même source de données, qui a un schéma prédéfini connu par l’application.
D’autres applications sélectionnent la source de données ou le pilote au moment de l’exécution. En règle générale, il s’agit d’applications génériques qui effectuent des requêtes ad hoc, telles qu’une feuille de calcul qui utilise ODBC pour importer des données. Ces applications répertorient généralement les sources de données ou pilotes disponibles et permettent aux utilisateurs de choisir ceux avec lesquels ils souhaitent travailler. Si une application générique répertorie les sources de données, les pilotes ou les deux fréquemment varient selon que l’application utilise des pilotes SGBD ou basés sur des fichiers.
Les pilotes SGBD nécessitent généralement un ensemble complexe d’informations de connexion, telles que l’adresse réseau, le protocole réseau, le nom de la base de données, etc. L’objectif d’une source de données est de masquer toutes ces informations. Par conséquent, le paradigme de la source de données se prête à être utilisé avec des pilotes SGBD. Une application peut afficher une liste de sources de données à l’utilisateur de l’une des deux manières. Il peut appeler SQLDriverConnect avec le mot clé DSN (Nom de la source de données) et aucune valeur associée ; Le Gestionnaire de pilotes affiche une liste de noms de sources de données. Si l’application souhaite contrôler l’apparence de la liste, elle appelle SQLDataSources pour récupérer une liste de sources de données disponibles et construire sa propre boîte de dialogue. Cette fonction est implémentée par le Gestionnaire de pilotes et peut être appelée avant le chargement des pilotes. L'application appelle ensuite une fonction de connexion et lui passe le nom de la source de données choisie.
Si aucune source de données n’est spécifiée, la source de données par défaut indiquée par les informations système est utilisée. (Pour plus d’informations, voir Sous-clé par défaut.) Si SQLConnect est appelé à l’aide d’un argument ServerName introuvable, est un pointeur Null ou est « DEFAULT », le Gestionnaire de pilotes se connecte à la source de données par défaut. La source de données par défaut est également utilisée si la chaîne de connexion utilisée dans un appel à SQLDriverConnect ou SQLBrowseConnect contient le mot clé DSN défini sur « DEFAULT » ou si la source de données spécifiée est introuvable. En outre, la source de données par défaut est utilisée si la chaîne de connexion utilisée dans un appel à SQLDriverConnect ne contient pas le mot clé DSN .
Avec les pilotes basés sur des fichiers, il est possible d’utiliser un paradigme de fichier. Pour les données stockées sur l’ordinateur local, les utilisateurs savent souvent que leurs données se situent dans un fichier particulier, tel que Employee.dbf. Au lieu de sélectionner une source de données inconnue, il est plus facile pour ces utilisateurs de sélectionner le fichier qu’ils connaissent. Pour implémenter cela, l’application appelle d’abord SQLDrivers. Cette fonction est implémentée par le Gestionnaire de pilotes et peut être appelée avant le chargement des pilotes. SQLDrivers retourne une liste de pilotes disponibles ; elle retourne également des valeurs pour les mots clés FileUsage et FileExtns . Le mot clé FileUsage explique si les pilotes basés sur des fichiers traitent les fichiers comme des tables, comme Xbase ou comme des bases de données, comme Microsoft Access. Le mot clé FileExtns répertorie les extensions de nom de fichier que le pilote reconnaît, telles que .dbf pour un pilote Xbase. À l’aide de ces informations, l’application construit une boîte de dialogue dans laquelle l’utilisateur choisit un fichier. En fonction de l’extension du fichier choisi, l’application se connecte ensuite au pilote en appelant SQLDriverConnect avec le mot clé DRIVER .
Il n’y a rien à empêcher une application d’utiliser une source de données avec un pilote basé sur un fichier ou d’appeler SQLDriverConnect avec le mot clé DRIVER pour se connecter à un pilote SGBD. Voici plusieurs utilisations courantes du terme DRIVER pour les pilotes SGBD :
Ne pas créer de sources de données. Par exemple, une application personnalisée peut utiliser un pilote et une base de données particuliers. Si le nom du pilote et toutes les informations requises pour se connecter à la base de données sont codées en dur dans l’application, les utilisateurs n’ont pas besoin de créer une source de données sur leur ordinateur pour exécuter l’application. Tout ce qu’ils doivent faire est d’installer l’application et le pilote.
L’inconvénient de cette méthode est que l’application doit être recompilée et redistribuée si les informations de connexion changent. Si un nom de source de données est codé en dur dans l’application au lieu d’informations de connexion complètes, chaque utilisateur doit uniquement modifier les informations de la source de données.
Accès à un SGBD particulier une fois seulement. Par exemple, une feuille de calcul qui récupère des données en appelant des fonctions ODBC peut contenir le mot clé DRIVER pour identifier un pilote particulier. Étant donné que le nom du pilote est significatif pour tous les utilisateurs qui ont ce pilote, la feuille de calcul peut être transmise entre ces utilisateurs. Si la feuille de calcul contenait un nom de source de données, chaque utilisateur doit créer la même source de données pour utiliser la feuille de calcul.
Navigation dans le système pour toutes les bases de données accessibles à un pilote particulier. Pour plus d’informations, consultez Connexion avec SQLBrowseConnect, plus loin dans cette section.