BeeBase

Programmable relational database
with graphical user interface Support This Project
This page is also available in Deutsch English

Documentation

La documentation ci-dessous fait partie de la distribution de BeeBase. Elle est également disponible sous forme de PDF.


[ << ] [ >> ]           [Sommaire] [Table des matières] [Index] [ ? ]

6. Gestion des projets

Dans ce chapitre vous trouverez :


6.1 Format de fichier

Un projet BeeBase est stocké dans une base SQLite3. Si vous êtes curieux, vous pouvez utiliser une visionneuse ou un éditeur de fichier SQLite3, comme `DB Browser for SQLite', pour explorer la structure interne d'un projet BeeBase. Le contenu de la base SQLite3 est compréhensible car il est dans un format lisible. Pour autant certaines choses ne sont pas évidentes.

Il est préférable de ne pas modifier à la main un fichier de projet, mais pour ceux qui veulent expérimenter voici quelques règles à suivre.

SQLite permet d'accéder à un projet avec plusieurs instances de BeeBase mais une seule peut modifier le projet. Notez qu'un bon fonctionnement du mécanisme de verrouillage nécessite que le système de fichier offre certaines garanties. Il est recommandé de tester d'abord le partage d'un projet avec plusieurs instances de BeeBase sur un système de fichier particulier avant d'utiliser cette fonctionnalité.


6.2 Informations

BeeBase conserve quelques informations sur chaque projet. Sélectionnez le menu `Projet - Information...' pour obtenir des informations sur le projet en cours. L'information retournée comprend le nom du projet, le nombre de tables, le nombre d'enregistrements dans toutes les tables, et une valeur montrant le nombre d'octets que vous pourriez gagner si vous réorganisiez ce projet. Le gain n'est cependant qu'une estimation grossière et ne doit pas être considéré comme une valeur exacte. Cette valeur est loin d'être précise, particulièrement si vous avez fait beaucoup de changements sur la structure du projet (en ajoutant ou en enlevant des champs).


6.3 Nouveau projet

BeeBase peut manipuler plusieurs projets en même temps. Vous êtes seulement limités par la mémoire disponible. Pour démarrer un autre projet, choisir le menu `Projet - Nouveau'. Une nouvelle fenêtre s'ouvre avec un projet vide. Vous pouvez maintenant définir la structure de ce projet (voir Projet - Éditeur de structure) ou charger un projet existant à partir du disque dur (voir Ouvrir - Projet).


6.4 Nettoyer un projet

Pour réinitialiser un projet, sélectionnez le menu `Projet - Nettoyer - Projet'. Le projet en cours sera alors fermé et remplacé par un projet vide. Lorsque vous démarrez BeeBase sans projets vous arrivez automatiquement dans cet état.

Par la sélection du menu `Projet - Nettoyer - Enregistrements' vous démarrez un nouveau projet en utilisant la structure courante. Ce qui signifie que tout (excepté les données enregistrées du projet en cours) est employé pour le nouveau projet.

Si un projet en cours n'a pas été sauvé sur le disque dur et que vous avez sélectionné le menu ci-dessus, une fenêtre vous demandera alors la confirmation de l'opération.


6.5 Ouvrir un projet

Pour charger un projet sélectionnez le menu `Projet - Ouvrir - Projet' qui ouvrira une fenêtre vous permettant de choisir un projet. Il y a plusieurs projets de démonstration pour illustrer les fonctionnalités de BeeBase. Pour les charger, sélectionnez le menu `Projet - Ouvrir - Démo'.

Si le projet chargé a son programme source placé à l'extérieur, le fichier source externe sera créé après ouverture du projet (voir Code source externe).

Si vous chargez un projet ou la structure d'un projet alors que le projet courant n'a pas été sauvé, une fenêtre s'ouvrira vous demandant de confirmer l'opération.


6.6 Enregistrer le projet

Tous les changements effectués sur un projet se font uniquement en mémoire ou sont temporairement stockés lors de déchargements d'enregistrements (voir Décharger les enregistrements). Aussi, si vous voulez les stocker de façon permanente, vous devez enregistrer le projet sur votre disque dur, en choisissant le menu `Enregistrer'. Si votre projet n'a pas encore de nom, il vous sera demandé auparavant.

La raison pour laquelle BeeBase ne sauve pas automatiquement un projet qui a changé, est que, de cette façon, c'est vous qui décidez lorsque vous voulez sauver un projet ! Vous pouvez toujours retourner sur la dernière version sauvée de votre projet en choisissant le menu `Projet - Rétablir la sauvegarde'. Ce mécanisme est semblable aux commandes `COMMIT' et `ROLLBACK' des systèmes de bases de données SQL.

Si vous enregistrez un projet, tous les enregistrements modifiés sont écrits sur le disque dur et le fichier `Structure.bbs' est recréé. Avant de créer le nouveau fichier `Structure.bbs', BeeBase renomme d'abord le fichier existant `Structure.bbs' en `Structure.old' pour avoir une copie de sécurité au cas où l'opération échouerait.

Ce mécanisme garantit le chargement et la sauvegarde rapide des opérations, mais il n'est pas exempté de réorganisation. Si vous avez modifié beaucoup d'enregistrements alors l'emplacement physique où les enregistrements se trouvent et la fragmentation qui en résulte peut devenir désavantageuse. C'est pourquoi un menu `Projet - Enregistrer & réorganiser' existe, pour réaliser l'opération d'enregistrement & de réorganisation. Cette opération peut prendre un certain temps selon le nombre et la taille de vos enregistrements. L'opération Enregistrer & Réorganiser crée un nouveau répertoire et réécrit tous les fichiers reliés à un projet. Une fois cette opération réalisée, l'ancien répertoire est supprimé.

Un autre bon moment pour prévoir une réorganisation est lorsque vous avez fait des changements sur la structure de données d'un projet, par exemple après avoir ajouté un nouveau champ dans une table. Ces changements ne sont pas appliqués immédiatement à tous les enregistrements parce que cela prendrait trop de temps de charger chaque enregistrement, pour le modifier, et le sauver de nouveau sur le disque. Par conséquent ces changements sont mis sur une liste interne `À faire' qui est appliquée après le chargement d'un enregistrement. L'application de cette liste à un enregistrement prend peu de temps. Cependant plus la liste devient longue, plus cela prend de temps. Réorganiser un projet oblige à appliquer cette liste `à faire' à tous les enregistrements, donc si vous avez fait des modifications à la structure du projet alors sa réorganisation réduira le temps de chargement des enregistrements.

Vous pouvez également enregistrer et réorganiser un projet sous un nouveau nom, ce qui conserve l'ancien projet intact. Pour faire cela il suffit d'utiliser le menu `Projet - Enregistrer & réorganiser sous' qui vous demande de saisir un nouveau nom de projet.


6.7 Modes Administrateur et Utilisateur

BeeBase travaille soit en mode Administrateur (mode par défaut), soit en mode utilisateur. Vous pouvez basculer d'un mode à l'autre en sélectionnant le menu `Projet - Passer en mode Administrateur' et `Projet - Passer en mode Utilisateur'. En mode Utilisateur, plusieurs éléments de menu sont désactivés et les éditeurs de structure, de programme et de requêtes ne sont pas disponibles. Ainsi seule l'édition basique d'enregistrement est possible. En mode Administrateur toutes les opérations sont autorisées.

Un mot de passe Administrateur peut être configuré pour un projet en sélectionnant le menu `Projet - Modifier le mot de passe Administrateur'. Une fois configuré, le mot de passe doit être saisi pour passer en mode Administrateur sinon le basculement sera refusé laissant le projet en mode Utilisateur.

Lors de l'ouverture d'un projet ayant un mot de passe Administrateur configuré, le projet est démarré en mode Utilisateur, dans le cas contraire (aucun mot de passe Administrateur n'est configuré), il est démarré en mode Administrateur.


6.8 Décharger les enregistrements

BeeBase n'a pas besoin de conserver tous les enregistrements d'un projet en mémoire. Ainsi le chargement et la sauvegarde des projets sont beaucoup plus rapides. En chargeant un projet, un entête d'enregistrement est alloué pour chaque enregistrement. Les données elles-mêmes sont chargées seulement lorsque c'est nécessaire, par exemple quand elles sont affichées sur l'écran. Le nombre d'enregistrements est encore limité par la mémoire disponible puisque chaque entête d'enregistrement utilise quelques octets de mémoire.

Vous pouvez spécifier la taille de la mémoire que devrait utiliser BeeBase pour les enregistrements d'un projet. Choisir une des valeurs prédéfinies se trouvant dans le menu `Préférences - Cache d'enregistrements' (voir Cache d'enregistrements). BeeBase ne préalloue pas un bloc mémoire de la taille indiquée, il vérifie seulement de temps en temps si la quantité courante de mémoire allouée est plus grande que la valeur indiquée.

Si BeeBase manque de mémoire ou si la limite supérieure de la capacité mémoire a été atteinte alors BeeBase essaye de libérer autant d'enregistrements de la mémoire que possible. Dans ce cas-là, BeeBase peut écrire les enregistrements modifiés sur le disque dur pour obtenir le maximum de mémoire disponible. Vous pouvez également forcer BeeBase à le faire en choisissant le menu `Projet - Décharger les enregistrements'.

BeeBase maintient une liste d'espace libre pour chaque fichier d'enregistrements. Si vous supprimez un enregistrement, l'emplacement dans le fichier d'enregistrements est ajouté à la liste d'espace libre. En outre, si vous changez un enregistrement et que celui-ci a besoin d'être écrit sur le disque dur, l'ancien emplacement dans le fichier est ajouté à la liste d'espace libre. Cependant BeeBase s'assure qu'un rechargement vous permettra toujours de retourner au point de la dernière opération de sauvegarde. BeeBase n'écrira pas sur les secteurs qui sont libérés mais où un enregistrement existe toujours et qui pourra être accédé en ouvrant à nouveau le projet.


6.9 Fermer le Projet

Quand vous avez terminé votre travail sur un projet vous pouvez le fermer en sélectionnant le menu `Projet - Fermer'. Ce qui libère la mémoire et toutes les ressources appartenant au projet. Si le projet contient des changements qui n'ont pas encore été sauvés, une fenêtre s'ouvrira vous demandant de sauver, de continuer ou d'annuler l'opération.

Pour la fermeture d'un projet vous pouvez également choisir le menu `Projet - Sauver & Fermer' qui sauve d'abord le projet s'il y a eu des changements avant de le fermer.


[ << ] [ >> ]           [Sommaire] [Table des matières] [Index] [ ? ]

Ce document a été généré le 30 Septembre 2024 par texi2html