J'ai un projet qui nécessite une interface graphique Excel (demande du client) avec un backend mysql db/table nécessitant presque 90 champs. (près de 60 champs sont duplications de 6 champs.)mysql: utiliser un champ pour contenir de nombreux "champs" à enregistrer sur les champs
Après avoir réfléchi, je fini par créer une table avec 11 champs: 10 champs interrogeable, et un grand champ qui peut contenir jusqu'à 60 champs " ensemble », séparés par ":"
ainsi, un dossier sur ce grand champ serait ressembler à quelque chose comme ceci:
charge1: 100: 200: 200 :: usd: frais2: 1000: 2000 : 2000 :: usd: charge3: 150: 200: 200: 250: USD, et ainsi de suite
Comme vous pouvez le voir, ce sont des blocs de 6 champs et peuvent être jusqu'à 10 de ces "blocs", mais jamais plus de 255 caractères.
Aucun de ces « champs » doivent être indexés, ni recherché (qui est fait sur les autres 10 champs)
Ce que je fais est la requête « SELECT * » (avec une interface graphique Excel) du 11 champs puis (avec VBA) je sépare ces valeurs en colonnes (cela prend moins de 1 seconde). Avec VBA, j'affiche les données sur certains champs dans le "formulaire" Excel.
Cela fonctionne très bien et je suis très heureux avec les résultats, comme je cherchais une solution légère, simple et super rapide, et il est.
Y at-il une raison technique pour ne pas le faire?
Peut-être que les champs avec trop de caractères peuvent poser des problèmes ????
Je crois savoir qu'il ya beaucoup de façons de gérer cela, mais c'est un petit projet et je suis à la recherche d'une solution simple qui fonctionne, pas un complexe (avec trop de tables et/ou des champs)
Depuis l'interface graphique est une interface Excel, je ne veux pas la rendre trop complexe si ce n'est pas nécessaire.
Merci d'avance pour votre contribution.
merci pour votre contribution Oui, je suis conscient que ce n'est pas la meilleure solution, mais une table avec près de 100 champs, je ne pense pas que ce soit non plus. Notez qu'il n'y a pas d'indexation nécessaire sur le grand champ. Toutes les valeurs de recherche sont sur les autres champs. – griseldataborda
@griseldataborda: Je ne voulais pas du tout remettre en question votre décision de conception. J'ai essayé de proposer des scénarios auxquels vous n'aviez pas encore pensé, où votre système pouvait poser problème, comme des changements de structure, ou peut-être le besoin soudain de faire des recherches dans ces colonnes. Comme je l'ai dit, il semble que vous ayez pris une décision éclairée en l'état. – Thomas
désolé désolé désolé ... ne voulait pas dire mauvais ou quoi que ce soit. J'apprécie vos commentaires ... J'aimerais juste avoir plus de connaissances pour trouver une autre solution plus appropriée – griseldataborda