Utilisation des ensembles de données dbExpress

De RAD Studio
Aller à : navigation, rechercher

Remonter à Utilisation des composants dbExpress - Index


dbExpress est un ensemble de pilotes de base de données légers qui permettent d'accéder rapidement aux serveurs de base de données SQL. Pour chaque base de données supportée, dbExpress propose le pilote adaptant le logiciel spécifique du serveur à un jeu d'interfaces dbExpress. Lorsque vous déployez une application de base de données qui utilise dbExpress, il suffit d'inclure une bibliothèque de liaison dynamique (le pilote propre au serveur) avec les fichiers d'application que vous créez.

dbExpress vous permet d'accéder aux bases de données à l'aide d'ensembles de données unidirectionnels. Ceux-ci ont été conçus pour un accès léger et rapide aux informations de la base, avec des temps système réduits. Comme les autres ensembles de données, ils peuvent envoyer une commande SQL au serveur de la base de données et, si la commande retourne un ensemble d'enregistrements, obtenir un curseur pour accéder à ces enregistrements. Toutefois, les ensembles de données unidirectionnels peuvent uniquement récupérer un curseur unidirectionnel. Ils ne placent pas les données dans un tampon de mémoire, ce qui les rend plus rapides et moins consommateurs de mémoire que les autres types d'ensembles de données. Mais, parce qu'ils ne mettent pas les enregistrements dans un tampon, les ensembles de données unidirectionnels sont moins flexibles que les autres ensembles de données. De nombreuses capacités introduites par TDataSet ne sont pas mises en oeuvre dans les ensembles de données unidirectionnels ou provoquent des exceptions. Par exemple :

  • Les seules méthodes de navigation supportées sont First et Next. La plupart des autres déclenchent des exceptions. Certaines, comme celles qui participent à la prise en charge des signets, ne font rien du tout.
  • Il n'y a pas de prise en charge d'édition intégré, car cela nécessiterait un tampon pour les modifications. La propriété CanModify est toujours à False, et donc les tentatives d'édition de l'ensemble de données échouent toujours. Vous pouvez cependant utiliser les ensembles de données unidirectionnels pour mettre à jour les données en faisant appel à une commande SQL UPDATE, ou leur conférer la prise en charge conventionnelle de l'édition en recourant à un ensemble de données client dbExpress ou en connectant l'ensemble de données à un ensemble de données client.
  • Il n'y a pas de prise en charge des filtres, car ceux-ci doivent fonctionner avec plusieurs enregistrements, ce qui nécessite la mise en tampon. Si vous essayez de filtrer un ensemble de données unidirectionnel, une exception est déclenchée. Pour imposer des limites aux données à afficher, il vous faut utiliser la commande SQL qui définit les données pour l'ensemble de données.
  • Il n'y a pas de prise en charge des champs de référence, qui nécessitent un tampon pour les enregistrements multiples contenant des valeurs de référence. Si vous définissez un champ de référence sur un ensemble de données unidirectionnel, il ne fonctionnera pas correctement.

Malgré ces limites, les ensembles de données unidirectionnels offrent un moyen puissant d'accéder aux données. Ils représentent le mécanisme d'accès aux données le plus rapide et sont très simples à utiliser et à déployer.

Les rubriques suivantes décrivent les ensembles de données unidirectionnels avec davantage de détails :

Voir aussi