Delphi 10.3.3 / Fire DAC / MySQL /
Bonjour,
J'ai une DBGRID qui m'affiche le contenu d'une table. Très bien, ça marche.
Une des colonnes de cette table affiche un champ qui contient du texte du genre: '0=toto;3=truc;5=machin'
Je voudrais interpréter ce texte sachant que chaque numéro représente un numéro de colonne.
Pour prendre un exemple, j'ai la table suivante:
et je souhaite afficher:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 ----------------------- | id | texte | ----------------------- | 1 | 0=AA;3=BB;5=CC | | 2 | 1=xx;2=yy;5=zz |
Est ce que je peux rajouter des colonnes à la DBGrid (meme en laissant la colonne texte) que je renseigne moi-même par le code ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 ------------------------------------- | id | C0 | C1 | C2 | C3 | C4 | C5 | ------------------------------------- | 1 | AA | | | BB | | CC | | 2 | | xx | yy | | | zz |
J'ai essayé DBGRid1.Columns.add mais ça ne marche pas, tout le contenu de la DBGrid disparait.
Dois-je créé une TStringGrid en parallèle que je viendrais remplir par du code ?
Il faut savoir que c'est moi qui génère le contenu du champ texte, donc si nécessaire je peux modifier son contenu.
Pour des raisons de place je ne veux pas stocker directement les données dans des colonnes distinctes, car je peux avoir près d'un milliard d'enregistrements dans la table et je cherche à optimiser la taille de la table qui est occupée sur disque. Cette méthode est beaucoup moins gourmande en espace disque et il faut savoir qu'il n'y a pas que 5 colonnes comme dans cet exemple mais bien plus.
Merci
Franck
Partager