Nous sommes le Lun 21 Juil, 2025 13:04
Supprimer les cookies

Page 1 sur 21, 2 SuivantL'utilité et l'utilisation d'une base de données

Sur le logiciel libre en général ou un logiciel libre en particulier

Mer 14 Fév, 2007 19:10

Bonjour,
Depuis peu, j'essaie de me pencher sur les bases de données. Je ne sais pas exactement ce que je veux en faire, mais le système m'intéresse. Grosso modo, je souhaiterai pouvoir gérer des classes d'étudiants (même si un tableur peut faire le boulot), ou bien faire des fiches de lecture (recenser sur ma seule machine les articles de tel ou tel domaine, en inscrivant les références de publication, un résumé, des mots-clés, et pouvoir ensuite faire une recherche dans les documents que j'ai pu lire avec un moteur de recherche par exemple, sans envisager pour l'instant de connexion à distance ou autre partage, même si on peut l'envisager à terme).
Je rencontre plusieurs problèmes :
1) une base de données est-elle, à votre avis, adaptée à ce genre d'utilisation ? A priori, l'intérêt des bases est de construire des relations, ce que je ne ferai pas forcément... Sauf peut-être avec des mots-clés : par exemple, je fais une table (je suis juriste) "décisions" et une table "articles", chacune contenant des mots-clés. Je peux faire une relation entre les deux tables avec les mots-clés que j'aurai défini, non? et ainsi faciliter mes recherches.
2) j'utilise une debian unstable et pensais me servir d'oobase. Le problème est que la création de formulaires via l'assistant nécessite java et que pour l'instant, je n'ai toujours pas réussi à le faie fonctionner. Il apparaît bien deux environnements java dans outils>options>openoffice>java, mais quel que soit celui que je sélectionne (sun ou blackdown (ou blackport?)), rien ne se passe, impossible d'utiliser l'assistant. Je ne veux pas installer les .rpm de la version d'Ooo 2.1 à partir du site officilel en les transformant en .deb, car je préfère me servir d'apt-get install pour ça, pour des raisons de simplicité et de gestion des dépendances. J'ai bien vu qu'il existait kexi, mais il est entièrement en anglais, ce qui m'en rend l'utilisation très difficile. Quelqu'un parvient-il à utiliser oobase sous debian en installant java ? Et quelle serait une bonne façon de procéder ?
3) j'ai pensé m'orienter vers MySQL, même si c'est très aride pour un newbie. Ce que je ne comprends pas, c'est qu'il est quasiment systématiquement étudié avec php, mais rarement seul : certes, apparemment, pour les sites web, c'est très intéressant d'utiliser les deux. Mais une utilisation de MySQL, avec une interface graphique francisée (soyons exigeants ;)) est-elle envisageable et pratique ?
Voilà. Quel est votre avis sur ces questions ?
Merci d'avance pour vos contributions.
Thierry

Messages : 146

Mer 14 Fév, 2007 21:06

Pour m'apporter un début de réponse, je viens de voir ça. Peut être y trouverai-je mon bonheur.
Thierry

Messages : 146

Mer 14 Fév, 2007 22:36

Bonsoir,

l'intérêt d'une base de données est de collecter des données, et de faire en sorte que leur accès soit grandement simplifié, en termes de temps de recherches et de requêts à exécuter.

On peut réaliser une base de données avec un tableur, mais au-delà d'une certaine limite (généralement jamais atteinte pour un usage classique), le base risque d'être trop lourde pour fonctionner sur ce typde d'application, pas adapté. Le tableur deviendra également plus lourd à manipuler plus les tâches seront nombreuses et/ou complexes.

Au-delà d'une certaine limite, mieux vaut donc recourir à un outil plus adapté.

On peut ensuite commencer par découper les bases de données en deux grandes catégories : relationnelles et non-relationnelles.

Les relationnelles permettent encore une fois de faire des requêtes plus poussées, plus structurées, et plus rapides donc qu'une base de données classiques. Encore une fois, la plupart du temps, une base de données classique non relationnelle suffira amplement. On a donc, par exemple MySQL : base de données classique, PostrGre, base de données relationnelle.

Travailler uniquement avec la base de données mysql est tout à fait possible, le langage PHP y est couplé pour lancer les requêtes et traîter l'interface graphique façon web. Mysql tourne sans php, les deux langages sont cmoplètement autonome.

Travailer MySQL de façon graphique, peut être fait via quelques applis (recensées également sur le lien donnée par LeaLinux : PHPMyAdmin, Eskuel, DBDesigner). Ces applications-là tournent sur PHP ;) et permettent de lancer des requêtes et torturer les bases de données.

Sinon, comme la plupart des langages, mysql est en anglais.

Sinon, sous debian, on trouve d'autres applications graphiques pour gérer mysql (MySQL Administrator, MySQL Query Browser...) (ici, chez gnome-files :)).

Kexi est une alternative à Ms Access, à privilégier je pense pour le genre d'applications désirées ici, surtout pour éviter de devoir apprendre en plus le php, parce que tout seul, mysql... :-)

Tolosano
Veni, Vidi, Libri - Diffuseurs de Licences Libres
http://VeniVidiLibri.org
Tolosano

Messages : 1940
Géo : Toulouse

Jeu 15 Fév, 2007 05:22

Depuis quand MySql n'est pas une bdr ?
Même Oobase en est une.
Pour répondre à la question première, une tableur peut en effet servir de base de donnée (non relationnelle dans ce cas..) mais imaginons un cas.
Tu veux gérer une bibliothèque:

Tu as une liste d'étudiants, disons qu'ils sont définis par Nom,Prénom,No carte d'étudiant (pour éviter les homonymes), no tel.
Tu as une liste de bouquins, disons qu'ils sont définis par Auteur, Titre, No ISBN, Code de bibliothèque.
Si tu fais çà avec un tableur, à chaque emprunt, il va te falloir remplir une ligne du tableur avec toutes ces données, ainsi que les dates de prêt et de retour.

Si tu veux savoir qui emprunte quoi, il va falloir faire des tris, des recherches...
Au bout d'un certain moment, et selon les données que tu veux, ca risque de devenir trés lourd.. Voire même de dépasser le nombre de ligne du tableur, ou d'entrainer des recherches à la mord moi le ....
Quels sont les livres qui sont empruntés à un instant t ?

Avec une bdr:
Tu vas pouvoir mettre en relation ces deux listes (entités), dans notre cas avec une table intermédiaire contenant: No carte étudiant, Code de bibliothèque, date emprunt, date retour.
On voit bien la relation entre cette table intermédiaire avec les deux premières listes, ainsi que les données spécifiques à l'emprunt (dates).
A chaque emprunt, seule la table intermédiaire est mise à jour, à chaque retour aussi.
Les recherches sont faciles, les mises à jour de n'importe quelle donnée sont simplifiées (imagines qu'un étudiant change de no de tel.. avec un tableur tu devras remplacer TOUTES les lignes.. avec une bdr, seule la fiche de l'étudiant change).

Sans parler des accés concurents, si plusieurs personnes veulent mettre à jour.. Trés bien gérés par une bdr, pas du tout par un tableur.

Les moteurs de bases de données (MySql, SQLlite, Postgres, SapDB, pour ne citer que certains libres), n'ont pas d'interface, ils ne font que renvoyer bêtement le résultat d'une requète, sans mise en page.
Si Mysql est si souvent employé avec php c'est que ce langage a des fonctions natives pour discuter avec cette base de donnée.
De plus Php permet de faire facilement des mises en page, des masques de saisie..
Pour les impressions d'état, c'est par contre plus compliqué :)

OObase, lui, permet d'avoir, le beurre et l'argent du beurre (sauf peut être en ce qui concerne les accés concurents), c'est une brd, il peut faire facilement les requètes, te les afficher dans des zoulis formulaires, faire des états... etc etc.
Pour une utilisation personnelle il est parfaitement ce qu'il te faut. Le seul problème est que OObase n'est pas à proprement parler un client léger :)
Il ne te reste plus qu'à demander comment le faire fonctionner sous ta débian... Personnellement avec ma Fedora, je n'ai aucun problèmes et je ne peux donc pas t'aider.

Cordialement.
Philippe

Messages : 353

Jeu 15 Fév, 2007 10:37

Il ne faut pas perdre de vue une chose essentielle. Un SGBD est un système de gestion (comme son nom l'indique) de bases de données. Donc un outil qui permet de mettre en oeuvre de façon efficace un jeu de données structurées. Mais la structure est fondamentale, et n'est pas générée par le SGBD. C'est à nous de la déterminer, c'est un travail qui peut être long et complexe (même pour peu de données), mais dont va ensuite dépendre directement la puissance de la base de données.

Une structure mal faite peut entraîner non seulement une lourdeur de fonctionnement, mais surtout une limitation des fonctionnalités ! Avec des données mal structurées, on peut rendre des informations inaccessibles ! Alors qu'une bonne structure permettra de croiser très efficacement des données et obtenir des informations très pertinentes de façon très simple.

Et ça c'est valable pour n'importe quel SGBD, mais aussi pour une feuille de tableur, ou un schéma qu'on fait sur un tableau noir.

Pour conclure, il ne faut pas croire que "mettre ses données dans un SGBD" sera une solution magique. La vraie solution est d'avoir une réflexion poussée sur ses données, leurs interactions, leur structure, les informations qu'on veut en retirer (entre parenthèses, c'est un métier). Le reste (type d'outil informatique, type de requêtes, ...) a moins d'importance, ou découle naturellement de la phase de conception.
irimi

Messages : 503

Jeu 15 Fév, 2007 11:25

parce que tout seul, mysql... :-)

Oui, je me disais bien aussi.
En tout cas, merci à tous pour ces explications. Je patine toujours côté oobase et Java, alors peut-être que je vais me lancer dans MySQL/php histoire de voir le fonctionnement.
1) je me mets à l'anglais
2) je me lance sur une base "test", quel que soit le moyen que j'utiliserai, pour voir concrètement comment les relations s'articulent.
Thierry

Messages : 146

Jeu 15 Fév, 2007 21:37

Alors, je vous tiens au courant de mes avancées.
Java sur mon oobase, c'était vraiment pas ça, impossible de le faire fonctionner. J'ai donc abandonné et me suis lancé dans phpmyadmin. Après avoir un peu tourné en rond, j'ai lancé un apt-get install apache2 mysql-server-5.0 phpmyadmin. Au final, en lançant mon navigateur préféré, et en me connectant à http://localhost/phpmyadmin, j'ai une interface graphique, comme un site web, francisée et croyez-moi ce n'est pas un luxe :).
Les liens qui m'ont aidé : les tutos de ce site, mais aussi ceci.
Principalement.
Il ne me reste qu'à bien comprendre les relations pour en construire une bien, ce qui suppose de se pencher sérieusement sur MySQL. Dommage qu'il n'y ait pas la représentation graphique des relations qui aide bien, mais on devrait y arriver quand même.
Le principal souci était... mon ignorance: ne voulant pas faire un site web, je me voyais mal installer un serveur sur ma machine, mais apparemment, il n'est accessible qu'en local, depuis mon propre ordinateur.
J'ai fais complètement fausse route ou je suis sur la bonne voie ?
Thierry

Messages : 146

Jeu 15 Fév, 2007 21:52

Tout dépend aussi du type de données... Pour tout ce qui est modélisation spatiale tu as l'HBDS : Hypergraph Based Data Structure. Tu utilises avec ça une base données objets, et hop t'es en avance sur ton temps ! si si... certaines grosses boites viennent tout juste de le comprendre... 25 ans après.
Quand tout le reste a échoué, lisez le mode d'emploi.
yostral

Avatar de l’utilisateur
Messages : 5403
Géo : Là-haut dans la montagne...

Jeu 15 Fév, 2007 21:52

Avec phpmyadmin tu peux très bien lancer des requêtes ;-)

Tu peux t'appuyer sur ce tuto

Toutes les opérations sont réalisables en mode console, où sur phpmyadmin.
Ensuite, tu peux t'«amuser» à tripatouiller les données sur le requêteur de pma.

Tolo.
Veni, Vidi, Libri - Diffuseurs de Licences Libres
http://VeniVidiLibri.org
Tolosano

Messages : 1940
Géo : Toulouse

Ven 16 Fév, 2007 10:00

yostral a écrit:Tout dépend aussi du type de données... Pour tout ce qui est modélisation spatiale tu as l'HBDS : Hypergraph Based Data Structure. Tu utilises avec ça une base données objets, et hop t'es en avance sur ton temps ! si si... certaines grosses boites viennent tout juste de le comprendre... 25 ans après.


C'est vrai ? Ya des gens qui utilisent HBDS et de vraies bases objet maintenant ? C'est pas trop tôt ! Tu as des liens stp ? Et s'il y a le moindre logiciel (libre) qui tourne autour de ça je suis preneur !!!

(tain j'y crois pas, yostral a réussi à caser HBDS dans le forum Framasoft ! :D )
irimi

Messages : 503

Qui est en ligne ?

Utilisateur(s) parcourant actuellement ce forum : Aucun utilisateur inscrit