J'ai un jeu de données dans lequel il y a 40 tables. Maintenant, je veux faire une relation entre ces tables et montrer des données importantes dans la grille. Comment puis-je faire cela?Comment faire une relation entre des tables qui sont dans le même jeu de données?
Répondre
Avez-vous essayé quelque chose comme:
ds.Relations.Add("Products_Category",
ds.Tables("Categories").Columns("CategoryID"),
ds.Tables("Products").Columns("CategoryID"));
Si vous créez un DataSet typé, il est plus facile de créer des relations dans le concepteur de jeux de données de Visual Studio. Faites un clic droit sur la table dans le concepteur, sélectionnez Ajouter-> Relation et spécifiez la relation.
Si vous devez spécifier la relation dans le code, vous pouvez le faire comme ceci:
dataSet.Relations.Add(dataSet.Tables["Customers"].Columns["customerId"],
dataSet.Tables["Orders"].Columns["customerId"]);
Lire tous à ce sujet dans MSDN here.
Mais j'ai récupéré toutes les tables de webservice et les lier dans l'ensemble de données. Maintenant, je veux faire une relation entre ces tables et montrer quelques données importantes dans une grille. Sil te plait aide moi. – Ashish
Ma réponse décrit exactement comment faire cela. –
C'est un grand nombre de DataTables
à avoir dans un DataSet
.
La première chose que je considérerais serait de réduire le nombre de DataTables
(et éliminer le besoin de Relations
) en remplissant le DataTables
avec des requêtes qui relient les tables de base de données. Par exemple, au lieu d'avoir un DataTable
pour la catégorie de produit et un autre pour le détail du produit, il peut être possible de combiner les données des deux tables de base de données en une DataTable
. De même, pour Customer, Customer Address et Customer Phone, récupérez toutes les données dans un DataTable en utilisant une requête qui fait un JOIN sur les trois tables de base de données.
Une fois que vous avez réduit le nombre de DataTables
dans le DataSet
, vous pouvez ajouter Relations
entre DataTables
si elles ont des colonnes correspondant (même si les colonnes ont des noms différents). Par exemple, il peut y avoir un commandes DataTable
avec une colonne CustomerID qui correspond à la colonne ID dans les clients DataTable
.
Voici le code pour ajouter un Relation
au DataSet
pour cette situation. Supposons que nous ayons un DataSet
dst contenant deux DataTables
clients et commandes.
DataColumn customerColumn, orderColumn;
customerColumn = dst.Tables["Customers"].Columns["ID"];
orderColumn = dst.Tables["Orders"].Columns["CustomerID"];
DataRelation dr = new DataRelation("CustomerOrders", customerColumn, orderColumn);
dst.Relations.Add(dr);
vous avez posé une question très précise et responsable
ds.Relations.Add("Products_Category",
ds.Tables("Categories").Columns("CategoryID"),
ds.Tables("Products").Columns("CategoryID"));
- 1. sur quelle base la relation entre les tables sont définies
- 2. Théorie de la base de données - relation entre deux tables
- 3. Utiliser SQL pour cloner des données dans deux tables qui ont une relation 1-1 entre eux
- 4. Comment visualiser la relation des tables dans une base de données Oracle
- 5. Relation entre un joueur et une base de données dans un jeu
- 6. Comment comparer des données entre une base de données et un guide qui sont différemment structurées?
- 7. Comment puis-je ajouter la même valeur dans les différentes tables qui sont dans des bases de données différentes
- 8. Comment ajouter une relation entre deux tables dans Mysql en utilisant le centre de contrôle Mysql
- 9. Nhibernate ICreteria relation entre les tables
- 10. Une question sur le stockage des données qui auraient dû être dans la même table
- 11. comment trouver des relations entre les tables
- 12. Comment joindre deux tables sur une colonne, qui a le même nom dans les deux tables?
- 13. Comment créer une relation entre des tables à l'aide de SQLAlchemy?
- 14. Récupération des données d'un modèle composé de plusieurs tables dans une relation un-à-plusieurs
- 15. Recherche de requête SQL pour afficher les données de 2 tables qui ne sont pas commone entre les tables
- 16. Relation de tables dans Cakephp
- 17. trouver une relation à travers plusieurs tables
- 18. Chargement des données d'une table dans deux autres tables (un détail, un résumé) qui sont liés
- 19. Stockage des données de relation dans mongodb
- 20. Lire plusieurs tables de jeu de données dans Powershell
- 21. Comment faire une requête sur deux tables avec des données de base?
- 22. Que faire si 2 tables de relations (ou plus) portent le même nom?
- 23. Comment puis-je récupérer des données dans une relation hasMany?
- 24. CakePHP - $ hasAndBelongsToMany et $ a de nombreuses relations entre les tables qui résident sur des bases de données distinctes et qui ont des langages d'interrogation différents?
- 25. Comment faire correspondre plusieurs tables avec le même schéma à une classe
- 26. Synchroniser en continu des tables entre deux bases de données
- 27. Comment faire une relation many-to-many dans LINQ?
- 28. Créer des relations entre les tables
- 29. insérer des données dans plusieurs tables
- 30. Faire des graphiques dans RaphaelJS qui sont 100% de largeur?
Ashish, ("comment relier les tables dans un ensemble de données"). Vous obtiendrez de meilleurs résultats si vous supprimez la deuxième question beaucoup plus large et plus vague ("comment afficher ces données dans une grille"). –