Comment persister mes données

Cet article est une présentation très rapide (pour les novices) qui a pour but d’introduire un prochain article plus intéressant.

Dans beaucoup de système d’information nous avons besoin de stocker des données. Je ne parle pas des données de configuration (quoi que). Je parle surtout des données à manipuler par le programme (les utilisateurs, les clients, …).

Il existe plein de moyen de stocker des données. Le plus simple est la variable : simple et rapide mais dès que votre application s’arrête vous perdez l’information. Pour ne pas perdre la donnée nous devons la persister. Je ne vais pas lister tous les moyens de persistance utilisable.

Une première solution est le fichier. C’est une solution sans installation. Cette solution peut paraître simple. On ouvre le fichier, on écrit dans le fichier, on ferme le fichier. Effectivement c’est simple.

Maintenant imaginons je veux modifier les données dans le fichier. Là ça se corse. Je peux ouvrir le fichier, lire et mettre en mémoire l’information puis écraser le contenu complet du fichier par le nouveau contenu et fermer le fichier. Ok ça fonctionne mais si le fichier est volumineux on risque d’exploser la mémoire. Et puis comment faire pour chercher une information dans ces fichiers.

C’est là que commence à apparaître la force des bases de données. Alors il existe plusieurs type de base données. Je reste concentré sur un SGBD (Serveur de Gestion de Base de Données) SQL. Avec ces solutions vous pouvez insérer, modifier, supprimer des données très facilement. La contrepartie est l’installation, la configuration et l’utilisation depuis l’application. C’est sûr que l’installation est plus compliqué que pour le fichier, mais il existe des solutions simples à installer ou en tout cas de très bonne ressources pour le faire facilement.

Les avantages des SGBD sont importants encore plus avec un SGBDR (SGBD Relationnel) qui va permettre d’avoir des liens entre les différentes tables. Imaginons une table article et une table fournisseur nous avons la possibilité de définir une clé étrangère dans la table article lié à la table fournisseur. La base de donnée va donc s’assurer qu’on ne peut pas associer un article avec un fournisseur qui n’existe pas. Ou même empêcher la suppression d’un fournisseur qui est associé à au moins un article.

Mais une base de données ne sert pas que pour stocker des données, elle les manipules. C’est ce que nous verrons dans un prochain article.