Post by alcinaPost by Bruno DesthuilliersPost by alcinabonjour à tous, j¹ai besoin d¹un coup de main pour démarrer et j¹espère dans
vos conseils. :-)
J¹ai plusieurs base de données MySQL sur mon site web, une base de données
pour chaque Pays.
??? Ca me semble un poil tordu comme conception. Je ne suis pas sûr de
comprendre s'il s'agit d'internationalisation (même contenu dans
différentes langues), ou d'un même schéma utilisé pour stocker des
informations similaires concernant différents pays, mais dans les deux
cas (ie : même schéma de données quelque soit la langue/le pays), je ne
vois pas le besoin d'avoir plusieurs *bases* pour gérer ça - il suffit
pays(*code_pays*, nom_pays)
ville(*id_ville*, nom_ville, _code_pays_)
....des données différentes pour chaque Pays (hôtels cinema etc.)...
On avait choisi la formule ³plusieurs databases², un peu parce que les codes
qu¹on a trouvé n¹ont pas une norme internationale commune, mais propre à
chaque Pays,
Tu veux dire que pour une même entitée (hôtel, cinéma, etc), le schéma
varie selon les pays ? Bon, c'est quelque chose qui peut techiquement se
gérer dans une seule base, mais d'un point de vue pratique et compte
tenu des déficiences^Mlimitations de MySQL (en tous cas des versions <
5.x), ça peut effectivement justifier l'approche choisie.
Post by alcinaet un peu aussi pour avoir des bases de données plus petites.
Là aussi, c'est discutable (entendre par là: ça peut se justifier dans
la pratique).
Post by alcinaPost by Bruno DesthuilliersPost by alcinaJ¹ai un form de recherche, où je voudrais mettre un menu déroulant pour
sélectionner le Pays, et donc (selon moi) la base de données.
Mais l¹ami avec lequel je suis en train de créer le site pense que ne soit
pas possible...
De "mettre la base de données dans le formulaire", effectivement, ça me
parait délicat !-)
:-) mais nooon!!! "sélectionner le Pays ET DONC SÉLECTIONNER la base de
données²
pas de la mettre toute dans le formulaire! :-)
Désolé, pas pu résisté !-) C'est comme quand on me demande si "il y a
internet sur ta machine" !-)))
Post by alcinaPost by Bruno DesthuilliersDe lister les bases auxquels tu a accès, et de sélectionner la base à
utiliser en fonction du choix du pays, c'est of course techniquement
possible (enfin, selon les droits que tu a sur le serveur MySQL pour ce
Pas de problèmes aux niveaux server & nombre de base...
Post by Bruno Desthuilliersqui concerne le fait de lister les bases, mais techniquement on peut
faire sans)
hem.... ???? une petite explication STP?
Coder en dur les couples pays->base dans le script PHP.
Post by alcina,> mais en tout état de cause une erreur de conception digne
Post by Bruno Desthuilliersdu DailyWTF. Si ton appli doit gérer des infos sur différents pays,
l'entité "pays" s'impose d'elle même comme partie du schéma.
on est des amateurs... et en plus... débutants! sorry :-(
Et moi un puriste, désolé aussi. Anyway, une bonne solution pratique
vaut mieux qu'une bonne solution théorique - en d'autres termes, une
vilaine verrue bien gérée vaut parfois mieux qu'une belle usine à gaz
ingérable.
Mais dans le domaine des modèles de données relationels, il est
généralement préférable de commencer par faire un MCD aussi propre que
possible. *Si* ce modèle s'avère ingérable - soit dans l'absolu, soit en
tenant compte des contraintes d'implémentation (limitations du SGBR par
exemple) et/ou d'exploitation (temps de réponse etc) -, *alors* on peut
justifier des solutions plus "pragmatiques".
En d'autres termes, le problème n'est pas tant de ne pas respecter la
règle que de savoir pourquoi on choisit de ne pas la respecter - ce qui
implique (entre autres) de connaitre la règle.
Post by alcinamais au moins on aura notre petite place sur le journal!
;-)
Pour l'utilisateur final, l'essentiel est que ça rende le service attendu.
Post by alcinanous sommes en train de réfléchir sur ce que tu m¹as dit, merci Bruno,
Merci à vous de l'avoir pris comme il convient.