Académique Documents
Professionnel Documents
Culture Documents
Plate-forme / Os : Toutes
fr.OpenOffice.org
Sommaire
1 Prsentation....................................................................................................3 2 Quelques notions sur les bases de donnes..................................................3 3 Base intgre HSQLDB..................................................................................3 4 Conception de la structure de la base.............................................................4 5 Cration du fichier Base..................................................................................4 6 Cration de la table T_ADHERENTS..............................................................5
6.1 Cration de la cl primaire..................................................................................6 6.2 Cration des autres champs...............................................................................7
2 / 26
fr.OpenOffice.org
1 Prsentation
Ce document est destin aux utilisateurs dOpenOffice.org 2 (OOo 2) dsirant utiliser le module Base et nayant pas ou peu de connaissances sur le sujet. Il prsente quelques notions lmentaires sur les systmes de gestion de bases de donnes relationnelles (SGBDR) et explique pas pas le fonctionnement de Base en se basant sur un exemple de cration dune base de donnes simple.
3 / 26
fr.OpenOffice.org
4 / 26
fr.OpenOffice.org
Tables Requtes Formulaires Rapports La zone Tches (zone B) propose diffrents choix en fonction du mode de travail actif. La zone C prsente les diffrents objets crs dans chaque mode. Dans la figure ci-dessus, cette zone est vide puisquaucun formulaire na t cr pour le moment.
5 / 26
fr.OpenOffice.org
Les bases intgres HSQLDB supportent les caractres Unicode comme noms de tables ou de champs. Nanmoins, dans ce document, je nutiliserai que des caractres non-accentus et je nutiliserai pas despaces. Ceci permet de garantir un maximum de compatibilit dans le cas o la structure de la base doit tre exporte vers un autre SGBDR. Les noms de tables seront en majuscules, prcds de T_ . Les noms de champs seront en minuscules, et les noms de cls primaires commenceront par id_ . Cest une habitude, mais cela na rien dobligatoire pour une base intgre HSQLDB.
6 / 26
fr.OpenOffice.org
7 / 26
fr.OpenOffice.org Nom du Champ id_adherent Integer Type Auto-valeur : oui expression dauto-increment : Identity cl primaire nom prenom date_naissance adresse_1 adresse_2 code_postal ville telephone date_echeance Varchar Varchar Date Varchar Varchar Varchar Varchar Varchar Date saisie requise : oui longueur : 50 saisie requise : oui longueur : 50 saisie requise : oui saisie requise : non longueur : 50 saisie requise : non longueur : 50 saisie requise : non longueur : 5 saisie requise : non longueur : 50 saisie requise : non longueur : 10 saisie requise : oui Noubliez pas de sauvegarder votre bauche de table sous le nom T_ADHERENTS si vous ne lavez pas dj fait. Vous pouvez fermer lbauche de table. Vous constatez que la table apparat bien dans la fentre Base si le mode Tables est activ. Si vous faites un double-clic sur licne de la table T_ADHERENTS, une fentre souvre qui prsente la table sous forme de tableau, et vous pouvez saisir directement des donnes dans les champs. Vous pouvez vrifier que les contraintes mises en place fonctionnent correctement (champ nom vide par exemple, ou code_postal de plus de cinq caractres) : Base refuse deffectuer lenregistrement. Nous verrons plus loin quil existe des moyens plus adapts deffectuer la saisie ou la consultation des donnes. Pour le moment, effacez les enregistrements que vous avez effectus (clic-droit > effacer des lignes) et fermez la fentre. Proprits
8 / 26
fr.OpenOffice.org date_operation type_operation ref_adherent credit Date Integer Integer Decimal saisie requise : oui saisie requise : oui saisie requise : non saisie requise : non dcimales : 2 valeur par dfaut : 0 Exemple de format : 0,00 debit Decimal saisie requise : non dcimales : 2 valeur par dfaut : 0 Exemple de format : 0,00 remarque validation_banque Varchar Boolean saisie requise : non longueur : 50 saisie requise : oui valeur par dfaut : non Remarquez deux champs particuliers : type_operation et ref_adherent qui sont de type Integer. Ces deux champs sont destins contenir des rfrences des enregistrements dautres tables par le biais de relations que nous allons tablir dans la suite du tutoriel. Remarquez galement le champ validation_banque de type Boolean. Ce type de champ permet de stocker une information binaire (qui ne peut prendre que deux valeurs : Oui ou Non). Cela est parfaitement adapt notre problme de validation dune opration.
9 / 26
fr.OpenOffice.org
Pour tablir la relation, cliquez sur le champ id_adhrent de la table T_ADHERENTS et tout en maintenant le bouton de souris press, glissez vers le champ ref_adherent de la table T_COMPTA. Relchez ensuite le bouton de souris, une ligne apparat entre les deux champs concerns.
Vous pouvez sauver la relation et fermer la fentre. Dornavant, vous ne pouvez saisir dans le champ ref_adherent que des valeurs qui existent dans le champ id_adherent dun enregistrement de la table T_ADHERENTS. Si vous essayez de saisir dans ref_adherent une valeur qui nexiste pas comme id_adherent , lenregistrement sera refus. Debuter_avec_Base.odt - Retour au Sommaire 10 / 26
fr.OpenOffice.org
Sauvez les relations et fermez la fentre Relations. Dornavant, vous ne pouvez saisir dans le champ type_operation que des valeurs prsentes dans le champ id_type dun enregistrement de la table T_TYPES_OP. Dailleurs, tant que vous navez pas saisi quelques types dans T_TYPES_OP, vous ne pouvez crer denregistrement dans T_COMPTA puisque le champ type_operation doit contenir une valeur, et que cette valeur doit tre prsente dans le champ id_type dun enregistrement de T_TYPES_OP. Vous allez donc crer quelques enregistrements dans la table T_TYPES_OP.
11 / 26
fr.OpenOffice.org
La table saffiche sous forme de tableau. Chaque colonne correspond un champ, chaque ligne correspond un enregistrement. La mention <AutoChamp> dans le champ id_type indique que ce champ se remplit automatiquement. Vous pouvez vous dplacer de champ en champ avec la touche TAB. Vous pouvez saisir quelques noms de type doprations. Les donnes saisies ne sont rellement inscrites dans la base que lorsque vous sauvegardez depuis cette fentre. Si vous fermez cette fentre sans avoir sauvegard alors que vous avez rajout ou modifi des donnes, un message dalerte vous invitera sauvegarder si vous voulez conserver les modifications. Vous devriez obtenir un cran de ce type : Ce mode de saisie reste trs basique et peu pratique pour des saisies de donnes complexes. Pour faciliter la saisie, vous aller utiliser des Formulaires.
12 / 26
fr.OpenOffice.org
10 Formulaires simples
Les formulaires sont des documents Texte auxquels on a ajout des proprits de connexion avec une base, et qui permettent dafficher, modifier ou saisir des donnes. Ils permettent de grer la manire dont les donnes sont prsentes.
13 / 26
fr.OpenOffice.org
Premire fentre de lassistant de cration de formulaire aprs choix des champs du formulaire
Nous nutiliserons pas de sous-formulaire dans ce formulaire, vous pouvez donc passer directement ltape 5 en cliquant sur Positionner les contrles . Cet cran permet de choisir comment les donnes seront prsentes dans le formulaire. Vous pouvez cliquer sur les diffrentes icnes de la zone Disposition du formulaire principal , le formulaire en arrire-plan ragit dynamiquement, vous permettant ainsi davoir une ide du rendu. Slectionnez Colonnes - tiquettes gauche . Vous allez laisser les valeurs par dfaut dans les Debuter_avec_Base.odt - Retour au Sommaire 14 / 26
fr.OpenOffice.org
tapes 6 et 7, vous pouvez donc cliquer sur Dfinir un nom pour passer ltape 8.
Par dfaut, lassistant vous propose le nom de la table comme nom du formulaire. Par souci de clart, vous pouvez rajouter la mention FORM en dbut de nom (FORM_T_ADHERENTS par exemple). Nous nallons pas diter ce formulaire, vous pouvez donc laisser le choix Comment voulez-vous procder aprs la cration du formulaire sur Utilisation du formulaire . Il est toujours possible dditer un formulaire ultrieurement lorsque cest ncessaire. Cliquez sur Crer , le formulaire est ouvert au premier plan. Debuter_avec_Base.odt - Retour au Sommaire 15 / 26
fr.OpenOffice.org
La mention en lecture seule dans la barre de titre signifie que vous ntes pas en mode ddition de formulaire, mais vous pouvez tout fait saisir des donnes dans votre table. Voici comment le formulaire se prsente lorsque vous avez effectu quelques saisies : La barre doutils Navigation pour formulaires permet deffectuer diverses oprations lies aux bases de donnes, notamment :
16 / 26
fr.OpenOffice.org
navigation parmi les enregistrements cration dun nouvel enregistrement validation (sauvegarde) dun nouvel enregistrement ou dune modification
17 / 26
fr.OpenOffice.org
Comme dans lexemple prcdent, ce formulaire est fonctionnel immdiatement. Nanmoins, il pourrait tre pratique que les deux champs type_operation et ref_adherent puissent tre remplis par le biais dune liste droulante qui prsenterait les choix autoriss pour ces champs. En effet, il nest pas forcment pratique de saisir 3 dans le champ ref_adhrent pour dsigner ladhrent dont id_adherent vaut 3 . Pour diter le formulaire, faites un clic-droit sur le nom du formulaire dans la zone Formulaires et slectionnez Modifier . Le formulaire souvre en mode dition. Vrifiez que les barres doutils Conception de formulaires et Contrles de formulaires sont bien actives. Si ce nest pas le cas, menu Afficher > Barres doutils pour les afficher. Dans la barre doutils Contrles de formulaires , cliquez sur loutil zone de liste et dessinez ensuite un cadre ct du champ type_operation . Un assistant zone de liste saffiche qui va vous permettre de paramtrer la zone de liste. Le premier cran de lassistant vous invite choisir de quelle table les donnes afficher doivent provenir. Dans notre cas, ce sera la table T_TYPES_OP.
18 / 26
fr.OpenOffice.org
Cliquez sur Suivant . Lcran suivant permet de choisir quel champ de la table T_TYPES_OP doit apparatre dans la zone de liste. Choisissez nom_type .
Cliquez sur Suivant . Le troisime cran permet dindiquer quels sont les champs respectifs des deux tables concernes (T_COMPTA et T_TYPES_OP) qui doivent concorder pour que le champ Debuter_avec_Base.odt - Retour au Sommaire 19 / 26
fr.OpenOffice.org choisi dans la zone de liste saffiche. Dans notre cas, cest le champ type_operation de la table T_COMPTA qui doit correspondre au champ id_type de la table T_TYPES_OP.
Cliquez sur Terminer . Sauvegardez le formulaire modifi. Fermez la fentre ddition de formulaire et rouvrez le formulaire en effectuant un double-clic sur son nom.
20 / 26
fr.OpenOffice.org
Vous pouvez dsormais remplir le champ type_operation en choisissant un nom dans la zone de liste. De la mme manire, vous pouvez crer une zone de liste pour saisir ref_adherent . Choisissez T_ADHERENTS comme table source, nom comme champ afficher dans la liste, et choisissez ref_adherent et id_adherent comme champs lis. Une tude complte des possibilits offertes par les formulaires demanderait beaucoup de place, nous allons nous arrter l pour le moment.
21 / 26
fr.OpenOffice.org
Formulaire termin
11 Requtes simples
Il serait utile de pouvoir connatre simplement ltat de notre compte bancaire, ainsi que ltat rel des nos finances (cest dire sans tenir compte de la validation par la banque). Une requte est une interrogation de la base de donnes selon des critres prcis, et qui a donc lavantage dtre toujours jour puisque les nouveaux enregistrements sont pris en compte chaque excution de la requte. Nous allons donc commencer par crer une requte qui calcule la somme des crdits, la somme des dbits et la diffrence entre les deux, ce qui nous donnera le solde financier courant. Pour cela, passez en mode Requtes et cliquez sur Crer une requte en mode bauche . Dans la fentre Ajouter des tables , slectionnez T_COMPTA et cliquez sur Ajouter puis Fermer .
22 / 26
fr.OpenOffice.org
Cet outil va nous permettre dindiquer quels champs nous souhaitons interroger, et ventuellement appliquer des fonctions. Slectionnez la premire case Champ et choisissez credit dans le menu droulant. Dans la ligne Alias (juste dessous) saisissez Total Crdit . Vrifiez que visible est coch, et dans la ligne Fonction choisissez somme . Dans la deuxime colonne, choisissez debit comme champ et saisissez Total Dbit comme Alias. Vrifiez que visible est coch, et dans la ligne Fonction choisissez somme . Dans la troisime colonne, saisissez lexpression Somme(''credit'') Somme(''debit'') dans la ligne champ , saisissez Solde Thorique dans la ligne Alias et vrifiez que visible est coch.
23 / 26
fr.OpenOffice.org
Sauvez la requte. Fermez la fentre bauche de requte. Vous pouvez dsormais connatre ltat des finances de votre association en effectuant un double-clic sur la requte que vous venez de crer. Pour connatre le solde en banque, nous allons utiliser le champ validation_banque . Rouvrez la requte prcdente en mode dition en faisant un clic-droit sur le nom de la requte et en choisissant modifier . Lorsque la requte est ouverte en mode dition, enregistrez-la sous un autre nom. Vous allez simplement rajouter un critre slection : ne faire la somme que pour les enregistrements dont le champ validation_banque vaut 1 (ou Vrai). Dans la quatrime colonne de lbauche de requte, rajoutez le champ validation_banque , dcochez visible , et dans la ligne critre saisissez ''1''.
24 / 26
fr.OpenOffice.org
Lexcution de cette requte vous donnera donc le solde rel en banque puisque ne seront prises en compte que les oprations valides.
25 / 26
fr.OpenOffice.org
13 Crdits
Auteur : Manuel NAUDIN Remerciement : Stphane SANTON, Jean-Franois NIFENECKER, Tony GALMICHE, Guillaume LEBENE. Intgr par : Sophie Gautier Contacts : Projet Documentation OpenOffice.org - fr.OpenOffice.org Traduction : Historique des modifications : Version 0.1 0.2 1.0 1.1 Date 18/04/06 27/04/06 30/04/06 20/01/08 Premire version Modifications suggres par Stphane SANTON, Jean-Franois NIFENECKER, Tony GALMICHE. Publication Modifications suggres par Fernand COSTA et Jean-Jacques FINAZZI Commentaire
14 Licence
Appendix Public Documentation License Notice The contents of this Documentation are subject to the Public Documentation License Version 1.0 (the "License"); you may only use this Documentation if you comply with the terms of this License. A copy of the License is available at http://www.openoffice.org/licenses/PDL.html. The Original Documentation is Dbuter avec Base. The Initial Writer of the Original Documentation is Manuel Naudin Copyright 2006. All Rights Reserved. (Initial Writer contact(s): audionuma@gmail.com). Contributor(s): ______________________________________. Portions created by ______ are Copyright _________[Insert year(s)]. All Rights Reserved. (Contributor contact(s):________________[Insert hyperlink/alias]). NOTE: The text of this Appendix may differ slightly from the text of the notices in the files of the Original Documentation. You should use the text of this Appendix rather than the text found in the Original Documentation for Your Modifications.
26 / 26