Mise à jour datagridview

germany1970 Messages postés 136 Date d'inscription mardi 4 mars 2008 Statut Membre Dernière intervention 22 mars 2014 - 27 janv. 2012 à 15:10
Mayzz Messages postés 2813 Date d'inscription mardi 15 avril 2003 Statut Membre Dernière intervention 2 juin 2020 - 27 janv. 2012 à 23:32
Bonjour,
voilà mon promblème :
j'au un datagridview qui affiche les données de mes contacts de ma Bd access pour cette opération j'ai pas souci mais quand j'ajoute un autre contact les enregistrements s'affiche en double dans mon datagridview.
comme faire pour afficher que les enregistrements sans doublons.

Merci d'avance.

12 réponses

ucfoutu Messages postés 18038 Date d'inscription lundi 7 décembre 2009 Statut Modérateur Dernière intervention 11 avril 2018 237
27 janv. 2012 à 16:47
Bonjour,
Manque l'essentiel : ta datagridview est-elle liée ou non ?


____________________
Réponse exacte ? => "REPONSE ACCEPTEE" pour faciliter les recherches d'autres forumeurs.
Pas d'aide en ligne installée ? ==> ne comptez pas sur moi pour simplement vous dire ce qu'elle contient
0
germany1970 Messages postés 136 Date d'inscription mardi 4 mars 2008 Statut Membre Dernière intervention 22 mars 2014 3
27 janv. 2012 à 17:10
oui elle est liée
0
ucfoutu Messages postés 18038 Date d'inscription lundi 7 décembre 2009 Statut Modérateur Dernière intervention 11 avril 2018 237
27 janv. 2012 à 17:12
C'est alors la table qui est mal gérée (en ajout). La gridview ne fait que constater ce défaut !


____________________
Réponse exacte ? => "REPONSE ACCEPTEE" pour faciliter les recherches d'autres forumeurs.
Pas d'aide en ligne installée ? ==> ne comptez pas sur moi pour simplement vous dire ce qu'elle contient
0
germany1970 Messages postés 136 Date d'inscription mardi 4 mars 2008 Statut Membre Dernière intervention 22 mars 2014 3
27 janv. 2012 à 17:20
alors c'est quoi la solution
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
ucfoutu Messages postés 18038 Date d'inscription lundi 7 décembre 2009 Statut Modérateur Dernière intervention 11 avril 2018 237
27 janv. 2012 à 17:34
N'en sais rigoureusement rien sans connaître ta table, notamment à propos de sa clé/idart
Drôle de question.

____________________
Réponse exacte ? => "REPONSE ACCEPTEE" pour faciliter les recherches d'autres forumeurs.
Pas d'aide en ligne installée ? ==> ne comptez pas sur moi pour simplement vous dire ce qu'elle contient
0
ucfoutu Messages postés 18038 Date d'inscription lundi 7 décembre 2009 Statut Modérateur Dernière intervention 11 avril 2018 237
27 janv. 2012 à 17:41
Je te suggère de commencer à lire :
Tapez le texte de l'url ici.
Encore une fois : seule ta table et les ajouts que tu y fais sont concernés, pas ta grille (ne pas confondre symptômes et causes !)


____________________
Réponse exacte ? => "REPONSE ACCEPTEE" pour faciliter les recherches d'autres forumeurs.
Pas d'aide en ligne installée ? ==> ne comptez pas sur moi pour simplement vous dire ce qu'elle contient
0
germany1970 Messages postés 136 Date d'inscription mardi 4 mars 2008 Statut Membre Dernière intervention 22 mars 2014 3
27 janv. 2012 à 17:54
voilà le code avec quoi je fais l'ajout des contact:

Private Sub ToolStripsave_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ToolStripsave.Click
conn "provider microsoft.jet.oledb.4.0 ; data source = " & Application.StartupPath & "\gestionclient.mdb;"

cnx = New OleDbConnection
cnx.ConnectionString = conn
cnx.Open()
sql = "select classique.* from classique"
cmd = New OleDbCommand(sql)
dta = New OleDbDataAdapter(cmd)
cmd.Connection() = cnx

'chargement du DataSet à partir du DataAdapter
dta.Fill(dts, "classique")

'chargement de la DataTable à partir du DataSet
dtt = dts.Tables("classique")
'crátion d'une nouvelle ligne avec les données des textbox
dtr = dts.Tables("classique").NewRow

dtr("rsoc") = Me.TextBox1.Text
dtr("police") = Me.TextBox2.Text
dtr("ncont") = Me.TextBox3.Text
dtr("pcont") = Me.TextBox4.Text
dtr("adresse") = Me.TextBox5.Text
dtr("ville") = Me.TextBox6.Text
dtr("tel1") = Me.MaskedTextBox1.Text
dtr("telfix") = Me.MaskedTextBox2.Text
dtr("fax") = Me.MaskedTextBox3.Text
dtr("mail") = Me.TextBox7.Text
dtr("coursier") = Me.TextBox8.Text
dtr("telcours") = Me.MaskedTextBox4.Text
dtr("observ") = Me.TextBox9.Text

'ajout de la ligne dans le DataSet
dts.Tables("classique").Rows.Add(dtr)
'ajout de la ligne dans le DataSet
cmdb = New OleDbCommandBuilder(dta)

'mise à jour des données du DataAdapter
'à partir du commandbuilder
dta.Update(dts, "classique")
MessageBox.Show("Contact ajouté avec succés", "Administrateur...", MessageBoxButtons.OK, MessageBoxIcon.Asterisk)
'on vide le dataset pour le recréer avec
'les nouvelles données
dts.Clear()
dta.Fill(dts, "classique")
dtt = dts.Tables("classique")
'**********************************************************
'mise à jour de la datagrid
Me.DataGridView1.DataSource = dts.Tables("classique")
'vider les textbox
'***************************************************************************
'aller au début du fichier
rownum = 0
End Sub
0
ucfoutu Messages postés 18038 Date d'inscription lundi 7 décembre 2009 Statut Modérateur Dernière intervention 11 avril 2018 237
27 janv. 2012 à 17:58
Ben...
Si tu crois que cela renseigne sur ta table (et notamment sa clé primaire), je n'ai rien à ajouter.


____________________
Réponse exacte ? => "REPONSE ACCEPTEE" pour faciliter les recherches d'autres forumeurs.
Pas d'aide en ligne installée ? ==> ne comptez pas sur moi pour simplement vous dire ce qu'elle contient
0
germany1970 Messages postés 136 Date d'inscription mardi 4 mars 2008 Statut Membre Dernière intervention 22 mars 2014 3
27 janv. 2012 à 18:11
la clé primaire est le numéro automatique crée par access
0
germany1970 Messages postés 136 Date d'inscription mardi 4 mars 2008 Statut Membre Dernière intervention 22 mars 2014 3
27 janv. 2012 à 18:21
oui vous avez raison, j'ai un problème dans l'ajout des contacts, au moment de validation de l'ajout ça marche, mais quand je ferme mon application et rentre une autre fois rien ne s'affiche dans ma datagriview et rien n'est enregistré dans ma table de base de données.
qu'elle est la solution.
je vous remercie de l'interet que vous porté à mon problème.
0
NSUADI Messages postés 540 Date d'inscription mardi 4 août 2009 Statut Membre Dernière intervention 1 février 2013 2
27 janv. 2012 à 19:43
Woow ton code est pas mal déconcertant mais juste une question:Est ce que ce code fonctionne?

Ce qui compte,ce n'est pas ce qu'on a mais plutôt ce que l'on fait avec ce qu'on a...

Visual Basic .Net is the best
and vb6.0
0
Mayzz Messages postés 2813 Date d'inscription mardi 15 avril 2003 Statut Membre Dernière intervention 2 juin 2020 30
27 janv. 2012 à 23:32
Salut,

Essaye avec

Me.DataGridView1.DataSource = Nothing

Avant

Me.DataGridView1.DataSource = dts.Tables("classique")

Si le déboguage est l'art d'enlever les bogues, la programmation doit être l'art de les créer.
0