Bonjour
Il m'arrive un truc bizarre.
J'ai une table avec une seule ligne dans ma base MySQL.
Je pose un composant TFDTable + un TDBgrid sur ma form, je lie le tout au composant TFDConnection et j'ouvre la table.
Résultat: une ligne vide.
Quand je regarde dans ma base, il y a pourtant bien une ligne de valeurs.
Pour vérifier, j'ouvre l'explorateur de données de Delphi, j'ouvre la connexion correspondante et je demande à voir le contenu de la table.
Résultat: Les valeurs sont affichées.
Pour confirmer, je fais un glisser-déposer sur la form de la connexion qui me permet de voir les données afin de créer le TFDConnection identique et je remplace la connexion précédente dans le composant TTable par ce TFDConnection qui devrait afficher les données.
J'ouvre le composant. Résultat: une ligne vide
Enfin, pour aller plus loin, je remplace le TFDTable par un TFDQuery + un select * from latable
Résultat: les résultats sont bien dans la grille.
Là, je sèche.
Qu'est-ce qui peut bien empêcher le composant TTable de voir cette ligne dans cette table précise ?
J'ai oublié de dire que je suis sur un Delphi XE7 dans une VM et que les données sont sur mon poste principal.
Pour toutes les autres tables, tout va bien.
Par contre, je viens de tester sur mon poste principal avec Sydney et donc la base sur le même poste, le composant TFDTable affiche bien les données de la ligne.
Peut-on en déduire un bug sur le composant dans XE7 ou un problème lié aux données "distantes" ?
Si oui, pourquoi uniquement sur cette table ?
Pour aller plus loin j'ai vérifié le SQL sous-jacent du TFDTable
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 procedure TForm9.FormShow(Sender: TObject); begin showMessage(TFDCustomQuery(FDTable1).SQL.Text); end;La même requête que lors de mon test avec TFDQuery[Window Title]
Project2
[Content]
SELECT A.*
FROM param A
[OK]
Partager