2009-08-25 8 views
0

Actuellement, j'ai un DataGrid et une source de données.WinForms Datagrid, affichage de la clé étrangère

DataSource est directement tiré de la base de données dans cet ordre:

Id, SalaryId, Vieux, New

Le problème est qu'il affiche le SalaryId, je le veux pour afficher la SalaryId Valeur

Comment est-ce que je fais ceci?

+0

Pouvez-vous préciser la distinction entre « l'SalaryId » (ce qui se voit maintenant) et "la valeur SalaryId" (que vous voulez montrer). –

+0

@Marc: Salaire a les lignes suivantes: Id, Value. Je veux afficher ceci: Id, Salary.Value (se référant à l'SalaryId), Vieux, Nouveau – Snake

Répondre

0

conjecture pure, mais vous avez probablement juste besoin de réécrire votre requête SQL d'origine de quelque chose comme:

SELECT ID, SALARYID, OLD, NEW FROM tblEMPLOYEE 

à quelque chose comme:

SELECT a.ID, b.SALARYVALUE, a.OLD, a.NEW FROM tblEMPLOYEE a, tblSALARY b 
WHERE a.SALARYID = b.ID 
+0

Eh bien c'est ce que je veux éviter, je ne veux pas faire une jointure. – Snake

+0

Eh bien, vos alternatives sont: 1) exécuter votre requête d'origine, puis parcourir les lignes dans votre jeu de résultats, en exécutant une requête distincte sur la table Salaire pour remplacer SalaryID par Value; ou 2) la magie. Pourquoi ne veux-tu pas faire une jointure? – MusiGenesis

Questions connexes