Partager via


Architecture des pilotes

L'architecture du pilote se trouve dans deux catégories, selon les logiciels qui traitent les instructions SQL :

  • Pilotes basés sur fichier Le pilote accède directement aux données physiques. Dans ce cas, le pilote agit à la fois comme pilote et comme source de données, c'est-à-dire qu'il traite les appels ODBC et les instructions SQL. Par exemple, les pilotes dBASE sont des pilotes basés sur des fichiers, car dBASE ne fournit pas de moteur de base de données autonome que le pilote peut utiliser. Notons que les développeurs de pilotes basés sur des fichiers doivent écrire leurs propres moteurs de base de données.

  • Pilotes basés sur un SGBD Le pilote accède aux données physiques par l'intermédiaire d'un moteur de base de données distinct. Dans ce cas, le pilote traite uniquement les appels ODBC ; il transfert des instructions SQL au moteur de base de données pour le traitement. Par exemple, les pilotes Oracle sont des pilotes SGBD, car Oracle dispose d'un moteur de base de données autonome que le pilote utilise. L'emplacement où se situe le moteur de base de données de données n'a pas d'importance. Il peut se trouver sur le même ordinateur que le pilote ou sur un autre ordinateur du réseau. Il peut également être accessible par l'intermédiaire d'une passerelle.

L'architecture des pilotes n'intéresse généralement que les auteurs de pilotes. Autrement dit, l'architecture des pilotes ne fait généralement aucune différence pour l'application. Toutefois, l'architecture peut influer sur la possibilité d'une application à utiliser le langage SQL spécifique au SGBD. Par exemple, Microsoft Access fournit un moteur de base de données autonome. Si un pilote Microsoft Access est basé sur un SGBD, ce qui signifie qu'il accède aux données par l'intermédiaire de ce moteur, l'application peut transférer des instructions Microsoft Access-SQL au moteur pour qu'il les traite.

Toutefois, si le pilote est basé sur des fichiers, autrement dit, s'il contient un moteur protégé qui accède directement au fichier .mdb de Microsoft Access, toute tentative de transfert d'instructions SQL spécifiques à Microsoft Access au moteur est susceptible d'entraîner des erreurs de syntaxe. La raison en est que le moteur protégé est susceptible de traiter uniquement le SQL ODBC.

Cette section contient les rubriques suivantes :