Bonjour tout le monde,
Je travail sous visual studio 2003 avec une base de données provenant de SqlServer2000.
Dans mon application, j'ai une fenêtre ou se situe un dataGrid que je souhaite remplir via une requête et un dataTable. Voici le code qui me permet de le remplir :
Lorsque j'exécute mon application, voici en image(documen word ci-joint) ce que cela me donne(c'est le premier dataGrid). Cela fais quelque semaine que je réfléchi... pour trouver d'ou peut provenir mon erreur?? Donc comment je peux faire pour pouvoir afficher les données??(la requête est exact car je les testé sous l'analyseur de sqlServeur.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20 private void NomClt_SelectedIndexChanged(object sender, System.EventArgs e) { string Five_Last_Intervention = ("SELECT TOP 5 INTERVENTION.IN_NUMINTER as NumInter, CONTACT.CT_NOMCTACT as NomCtact, MACHINE.M_NOMMAT as NomMat FROM INTERVENTION INNER JOIN MACHINE ON INTERVENTION.IN_IDMAT = MACHINE.M_IDMAT AND INTERVENTION.IN_NUMCLT = dbo.MACHINE.M_NUMCLT INNER JOIN CONTACT ON MACHINE.M_NUMCTACT = CONTACT.CT_NUMCTACT WHERE INTERVENTION.IN_NUMCLT = '" + NumClt.Text + "' ORDER BY INTERVENTION.IN_NUMINTER DESC"); connection.Open(); try { DataTable dt = new DataTable(); SqlDataAdapter dataAdapter = new SqlDataAdapter(Five_Last_Intervention, connection); dataAdapter.Fill(dt); dataGrid1.DataSource = dt; } catch(Exception ex) { MessageBox.Show(ex.ToString()); } finally { connection.Close(); } }
A savoir que si j'utilise un dataSet(donc le code suivant) les données s'affiche bien dans le dataGrid :
Merci d'avance pour votre aide!!
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21 private void NomClt_SelectedIndexChanged(object sender, System.EventArgs e) { string Five_Last_Intervention = ("SELECT TOP 5 INTERVENTION.IN_NUMINTER as NumInter, CONTACT.CT_NOMCTACT as NomCtact, MACHINE.M_NOMMAT as NomMat FROM INTERVENTION INNER JOIN MACHINE ON INTERVENTION.IN_IDMAT = MACHINE.M_IDMAT AND INTERVENTION.IN_NUMCLT = dbo.MACHINE.M_NUMCLT INNER JOIN CONTACT ON MACHINE.M_NUMCTACT = CONTACT.CT_NUMCTACT WHERE INTERVENTION.IN_NUMCLT = '" + NumClt.Text + "' ORDER BY INTERVENTION.IN_NUMINTER DESC"); connection.Open(); try { SqlDataAdapter dataAdapter = new SqlDataAdapter(Five_Last_Intervention, connection); DataSet ds = new DataSet(); dataAdapter.Fill(ds,"Five_Last_Intervention"); dataGrid1.DataSource = ds; dataGrid1.DataMember = "Five_Last_Intervention"; } catch(Exception ex) { MessageBox.Show(ex.ToString()); } finally { connection.Close(); } }
Partager