Pour AdoQuery, vous devez utiliser la propriété DataSource. Voici ce que vous devez faire:
1- Déposez une requête AdoQuery sur le formulaire en tant qu'ensemble de données maître et écrivez la requête à l'aide de sa propriété SQL.
2- déposez un composant de source de données sur la forme, et le connecter au maître AdoQuery vous créé dans l'étape 1.
3- Déposer une autre AdoQuery sur la forme que l'ensemble de données détail.
4- Définissez la propriété DataSource de votre jeu de données détaillé sur la source de données connectée à l'ensemble de données maître (reportez-vous à l'étape 2).
5- Écrivez la requête SQL pour votre jeu de données de détail , en utilisant sa propriété SQL; Dans la requête, vous devriez avoir une clause WHERE qui filtre votre ensemble de données détaillées en utilisant un paramètre qui a le même nom que l'un des champs de la source de données principale. Par exemple, supposons que vous ayez un champ ID dans votre ensemble de données maître et un champ appelé MasterID dans votre ensemble de données détaillé qui est une clé étrangère pour le champ ID de l'ensemble de données maître. Maintenant, pour connecter l'ensemble de données de détail à celui de maître, l'utilisation de ces champs, vous pouvez écrire une requête pour l'ensemble de données de détail comme celui-ci:
SELECT * FROM DetailTable WHERE MasterID = :ID
Comme vous pouvez le voir, nous avons un paramètre SQL nommé ID, qui a même nom que le champ ID dans la source de données principale. Désormais, chaque fois que vous parcourez des enregistrements dans la source de données principale, Delphi récupère automatiquement la valeur du champ ID et l'utilise comme valeur du paramètre ID dans l'ensemble de données de détail, et réinterroge l'ensemble de données de détail. Vous n'avez pas besoin de définir la valeur du paramètre et requery explicitement. Cela sera fait automatiquement pour vous. J'espère que cela vous clarifiera la façon de créer une relation maître-détail à l'aide des jeux de données AdoQuery.
Cordialement
merci beaucoup.je vous remercie beaucoup –