Bonjour,
Je cherche un exemple d'utilisation d'un datagridview lier a une base de donnees ??
Comment faire la mise a jour de la base de données apres modification des valeur dans le datagridview!
Merci d'avance
Bonjour,
Je cherche un exemple d'utilisation d'un datagridview lier a une base de donnees ??
Comment faire la mise a jour de la base de données apres modification des valeur dans le datagridview!
Merci d'avance
- La communication consiste a comprendre celui qui ecoute !
- Qui veut faire quelquechose trouve un moyen, qui ne veut rien faire trouve une excuse
c'est compliqué a expliquer si tu veux faire ça par le code.
Sinon, ce que ut peux faire, c'est ajouter un dataset, et là ça devrait e faire tout seul^^
Petit poulain devient grand de jour en jour...
Petit Poulain, ce n'est que pour les intimes!
Ben, les données sont bien chargées dans la datagridview...
Mais quand je fais des modifs, elles ne sont pas repercutées dans la base de données.?????
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 Me.DataGridView1.DataSource = me._datatable
j'ai essayé de trouver des exemples sur google et sur http://plasserre.developpez.com/vsommair.htm mais j'ai rien trouvé.
Je cherche un exemple tout simple, une table, un datagridview...
et quand on fait des modif dedans, ça modifie les données de la table.
- La communication consiste a comprendre celui qui ecoute !
- Qui veut faire quelquechose trouve un moyen, qui ne veut rien faire trouve une excuse
Complement d'information.
Apres quelques tests, je ne vois toujours pas !!!!
voila ce que je fais.
j'ai une class qui pointe sur une table:
Puis dans ma form:
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
22
23
24
25
26
27 Public Class MaClass Private _strConn As String Private _strSql As String Private _adapter As OleDbDataAdapter Private _ObjDataSet As New Data.DataSet Private _ObjetCommandBuilder As OleDbCommandBuilder Public Sub New() _strConn = My.Resources.ConnectAccess.ToString() _strSql = "SELECT * FROM Table1" _adapter = New OleDbDataAdapter(_strSql, _strConn) _ObjDataSet = New Data.DataSet _adapter.Fill(_ObjDataSet) End Sub Public ReadOnly Property datatable() As DataTable Get Return (_ObjDataSet.Tables(0)) End Get End Property Public ReadOnly Property dataset() As DataSet Get Return (_ObjDataSet) End Get End Property
code qui ne fonctionne pas(n'affiche aucune valeur dans le DataGridView1):
code qui fonctionne(affiche les données de ma table :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 Public Class frm1 Private _class As New MaClass Private Sub frm1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load Me.BindingSource1.DataSource = Me._class.dataset Me.DataGridView1.DataSource = Me.BindingSource1 End Sub End Class
Comment fait-on pour affecter les mise a jour du "DataGridView1" dans ma table ????
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 Public Class frm1 Private _class As New MaClass Private Sub frm1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load Me.DataGridView1.DataSource = Me._class.datatable End Sub End Class
merci d'avance.
- La communication consiste a comprendre celui qui ecoute !
- Qui veut faire quelquechose trouve un moyen, qui ne veut rien faire trouve une excuse
Personne pour m'aider ???
je cherche une piste !!!
- La communication consiste a comprendre celui qui ecoute !
- Qui veut faire quelquechose trouve un moyen, qui ne veut rien faire trouve une excuse
J'ai fait ça :
et un bouton avec:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 DataGridView1.AutoGenerateColumns = True Me._dataset = MaCalass.dataset BS = New BindingSource(Me._dataset, "Table1") Me.DataGridView1.DataSource = Me.BS
et les données ne sont toujours pas enregistrées dans la table !
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 BS.EndEdit()
- La communication consiste a comprendre celui qui ecoute !
- Qui veut faire quelquechose trouve un moyen, qui ne veut rien faire trouve une excuse
Grrrrr !!
J'en suis là !!!
mais ça ne fait toujours pas les mise à jour dans la table !!
dans ma class j'ai ajouté:
et dans ma form
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 _ObjDataSet.DataSetName = "Table1" _ObjDataSet.Tables(0).TableName = "Table1"
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 Public Class frm1 Private _class As New MaClass Private _dataset As DataSet Private _BS As BindingSource Private Sub frm1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load DataGridView1.AutoGenerateColumns = True Me._dataset = Me._jourferie.dataset Me._BS = New BindingSource(Me._dataset, "Table1") Me.DataGridView1.DataSource = Me._BS End Sub Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click Me._dataset.AcceptChanges() End Sub End Class
- La communication consiste a comprendre celui qui ecoute !
- Qui veut faire quelquechose trouve un moyen, qui ne veut rien faire trouve une excuse
Oui, mais je ne parlais pas de faire ça, avec un dataset créé par le code, je parlais de faire ça avec le designer.
Et quand tu fais un changement, tu fais un update du dataset.
Par le code, tu dois faire une procédure...
Petit poulain devient grand de jour en jour...
Petit Poulain, ce n'est que pour les intimes!
est-ce qu'à l'installation de la base de donnée dans ton projet tu a choisi de faire une copie de la base si c'est le cas j'ai eu le même problème, j'ai pas bien compris dans l'aide l'explication "Je débute en vb 2008 express", j'ai pour ma part laissé la base de donnée à sa place initiale et maintenant l'update fonctionne normalement !!!
Euhh installer la base ??
C'est une base access, j'ai juste créé une ressource pour acceder a cette base.
C'est la premiere fois que j'utilise un datagridview... dans mes autres forms je fais toutes les mise a jour a l'aide de UPDATE(une instruction sql des plus classique) ou OleDbDataAdapter.update(datarow) ... c'est 2 methode fonctionnent a merveille!!!
Mais là, je pensais ne pas avoir a pondre une methode qui recupere le nouveau dataset(modifié par l'utilisateur dans le datagridview) et le comparare pour mettre a jour mon dataset de ma class...ça me parait super mega lourd!
mais je n'ai peut-etre pas le choix ????????
Une procedure ????
merci pour vos reponses
- La communication consiste a comprendre celui qui ecoute !
- Qui veut faire quelquechose trouve un moyen, qui ne veut rien faire trouve une excuse
YOOOOUUUUUPPPIIIIIII !!!!
J'ai trouvééééé !!!!!!
Alors voila:
Ma class :
Et dans ma form:
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
22
23
24
25
26
27
28 Public Class MaClass Private _strConn As String Private _strSql As String Private _adapter As OleDbDataAdapter Private _ObjDataSet As New Data.DataSet Private _ObjetCommandBuilder As OleDbCommandBuilder Public Sub New() _strConn = My.Resources.ConnectAccess.ToString() _strSql = "SELECT * FROM Table1" _adapter = New OleDbDataAdapter(_strSql, _strConn) _ObjDataSet = New Data.DataSet _adapter.Fill(_ObjDataSet) End Sub Public ReadOnly Property datatable() As DataTable Get Return (_ObjDataSet.Tables(0)) End Get End Property Public Sub UpdateDataset(ByVal d As DataTable) _ObjetCommandBuilder = New OleDbCommandBuilder(_adapter) _adapter.Update(d) _ObjetCommandBuilder = Nothing End Sub
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13 Public Class frmMaForm Private _maclass As New MaClass Private Sub frmMaForm_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load DataGridView1.AutoGenerateColumns = True Me.DataGridView1.DataSource = Me._jourferie.datatable End Sub Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click Me._maclass.UpdateDataset(Me.DataGridView1.DataSource) End Sub End Class
- La communication consiste a comprendre celui qui ecoute !
- Qui veut faire quelquechose trouve un moyen, qui ne veut rien faire trouve une excuse
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager