Introduction
Pour manipuler plus commodément les données issues d'une requête (champs), y accéder facilement (selon leur type) et permettre des recherches, un conteneur intermédiaire de type Table ou DataSet s'imposait.
Cet ensemble de données devait pouvoir être affiché facilement dans une grille.
Et idéalement, les modifications de valeurs dans la table ou la grille devaient pouvoir être répercutées :
- vers la grille ou la table d'une part,
- vers la base
Introduction :
Pour répondre à des besoins de confidentialité, on peut crypter les champs de la base. Cela gonfle le code et alourdit les appels. Pour simplifier ces accès, crypter la base est plus naturel. Faute de solution libre et gratuite pour ce SGBD, j'ai cherché à exploiter la capacité de la version 3 de SQLite de gérer des systèmes de fichiers virtuels.
SQLite est multiplateformes alors que chaque OS (Operating System) implémente différemment l'accès aux fichiers.
Introduction :
La récupération des résultats des requêtes par l'API SQLite et le wrapper développé précédemment se révèle vite fastidieuse, nécessitant à chaque fois l'implémentation de fonctions adaptées au besoin. L'idée est née de standardiser et automatiser cette phase à destination d'objets simples et familiers (champ, TStrings, TStringGrid). Pour cela, l'encapsulation dans un objet gérant l'accès à une base de données permet de se décharger des soucis de gestion, de manipulation
Introduction
Pour me faciliter la vie, j'ai développé un objet gérant des requêtes paramétrées simples. Il apporte une commodité en élaborant des requête au format texte à partir du SQL fourni et de paramètres dont les valeurs peuvent être affectées dans leur type, évitant à l'utilisateur de les convertir. Destiné à ma librairie pour SQLite, il n'utilise cependant pas l'API dédiée du SGBD, prenant simplement en entrée une requête textuelle avec des noms de paramètres, permettant leur
Introduction :
Très ignorant en matière de bases de données, et surtout de composants d'accès aux données, je n'avais que des besoins basiques (à l'époque sous Delphi 5). Je me suis donc attaché à développer une interface simpliste pour le gestionnaire SQLite de sqlite.org, afin de mieux comprendre les mécanismes en jeu.
Ce SGBD libre tient dans une seule DLL (initialement pour Windows 32 bits et Linux), gérant des bases locales mono-utilisateur contenues dans un seul