![]() |
| Le forum de référence en programmation et développement. Articles, cours et tutoriels du débutant au chef de projet et DBA confirmé. | |||||||
|
|||||||
| Méthodes Forum d'entraide sur les méthodes : Merise, UP, XP ... |
![]() |
|
|
Outils de la discussion |
|
|
#1 (permalink) |
|
Membre à l'essai
![]() Date d'inscription: mai 2005
Messages: 46
|
Bonjour à tous,
J'ai une application (PHP / MySQL) et j'ai besoin de faire des "photos" à un instant donné, des historiques. - ces historiques sont consultables dans l'application. - ces historiques ne sont pas modifiables. J'ai developpé ce module d'historiques dans l'application elle-même et ça fonctionne très bien. Ce que je voudrais faire maitenant c'est "externaliser" ces historiques, notamment pour alleger la BD. Je pensais donc produire / exporter ces historiques dans des fichiers XML et les consulter, derrière, dans l'application. Etant donné que je n'ai que très peu utilisé XML, je ne suis pas sûr que ces fichiers me permettent la même souplesse qu'avec ma BD. En gros je ne sais pas si il est possible de reproduire avec des fichiers XML la structure d'une BD. Concrètement et en simplifiant au maximum. Imaginons que mon application concerne des users qui repondent à des questionnaires. Dans ma BD, j'ai mes table user (id, nom), questionnaire (id, nom), questionnaire_question (id, questionnaire_id, texte), questionnaire_user (questionnaire_id, user_id) et questionnaire_user_reponse (id, questionnaire_user_id, question_id, texte). A priori (sans connaître ce qu'il est possible de faire avec XML) je voyais mes fichiers XML comme ça : - un fichier par user avec à l'interieur ses données propres (id, nom, ses questionnaire_user_id) - un fichier par questionnaires (id, nom et questions) / ou un fichier pour tous les questionnaires - un fichier pour les reponses des users aux questionnaires Ce que je ne sais pas c'est si on peut jouer avec differents fichiers XML, les croiser, aller piocher telle info (le texte de la question si on a son id dans un autre fichier) dans tel fichier "à la volée" etc... Ou suis-je obligé pour chaque fichier user d'insérer toutes les données le concernant (les questions et les reponses de ses questionnaires ici)? Merci d'avance pour vos conseils EDIT POUR LES MODOS : j'aurais peut-être mieux fait de placer ce topic directement dans la rubrique XML, pouvez-vous le déplacer? Merci |
|
|
|
|
|
#2 (permalink) |
![]() |
Salut,
Avant de m'attaquer au noeud du problème, je te conseillerais quand même de réfléchir une fois encore à l'avantage que tu tireras d'utiliser des fichiers XML par rapport au fait d'attaquer directement la base de données. Les cas où une application risque de surcharger un SGBDR - surtout si elle ne doit accéder à une base de données que de manière ponctuelle - sont vraiment limités Si des mises à jours de la BDD sont susceptibles d'arriver durant l'exécution de l'application, il est de toutes manières tout à fait envisageable de ne pas prendre les enregistrements rajoutés entre deux accès à la BDD en compte Ceci dit, je vais considérer que tu as déjà réfléchi sereinement à la question Tu peux tout à fait créer plusieurs fichiers XML séparés. Cependant, tout comme il faut prévoir des relations entre les différentes tables d'une base de données, il deviendra nécessaire de créer des relations entre les différents fichiers, et surement entre les différents éléments d'un fichier donné et les éléments correspondant dans un autre ![]() Bref, bien que ce soit tout à fait envisageable, cela me semble peut-être un chouia trop complexe à gérer... Par contre, s'agissant de "clichés instantanés", le plus facile resterait quand même de n'utiliser qu'un seul cliché qui pourrait prendre une forme proche de Code XML :
<instantane date="18/06/2008" time="00:06"> <!-- la date et l'heure de création du cliché --!> <userlist> <!--la liste des utilisateurs et de leurs informations personnelles--!> <user id="koala"> <!--toutes les informations relatives à koala--!> </user> <!--les autres utilisateurs--!> </userlist> <questionnaire id="1"> <!--es informations concernant le questionnaire--!> <questionlist> <!--d'abord les questions--!> <question id="1"> <!--la question--!> </question> <!--les autres questions --!> </questionlist> <answerlist> <!--puis les préponses--!> <answers by="koala"> <!--de chaque utilisateur--!> <answer num="1"> <!--à chaque question--!></answer> </answers> </anserlist> </questionnaire> <!--autres questionnaires--!> </instantane>
__________________
Ce qui se conçoit bien s'énonce clairement. Et les mots pour le dire vous viennent aisément. Nicolas Boileau Compiler Gcc sous windows avec MinGW Vous avez obtenu votre réponse en bas de pageA méditer: La solution la plus simple est toujours la moins compliquée |
|
|
|
|
![]() |
![]() |
||
Base de données > XML
|
||
| Outils de la discussion | |
|
|