IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

VB.NET Discussion :

inserer les modifications d'une datagrid dans la base données


Sujet :

VB.NET

  1. #1
    Invité
    Invité(e)
    Par défaut inserer les modifications d'une datagrid dans la base données
    bonjour,
    je suis un débutant en .net
    j ai crée un formulaire sur lequel j'ai importé une datagrid de la source de données (sous visual studio 2010) qui m affiche les informations depuis une base de donnée access 2007
    bon mon problème c'est que lorsque je fais une modification d'une case et que j'enregistre, les modifications ne s'enregistrent pas sur la base de données
    le code du bouton enregistrer est :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     Private Sub CompteBindingNavigatorSaveItem1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles CompteBindingNavigatorSaveItem1.Click
            Me.Validate()
            Me.CompteBindingSource.EndEdit()
            Me.TableAdapterManager.UpdateAll(Me.ConsortiumDataBaseDataSet)
        End Sub
    est ce que quelqu’un peut m'aider et merci
    Dernière modification par Sankasssss ; 14/03/2012 à 13h46. Motif: balise [CODE] ... [/CODE]

  2. #2
    Membre régulier
    Homme Profil pro
    .Net developer
    Inscrit en
    Février 2012
    Messages
    99
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : .Net developer

    Informations forums :
    Inscription : Février 2012
    Messages : 99
    Points : 91
    Points
    91
    Par défaut
    J'ai pas énormément plus de compétences que toi en VB (si ce n'est que j'ai +/- réussi à comprendre l'update dans une DB).

    Le peu de code que tu as montré ne m'aide pas vraiment à comprendre ton erreur.

    Pourrais-tu rajouter un peu plus de code? (genre le bouton qui appelle ta fonction par exemple).

    Es-tu certain que ton application passe bien par le bout de code que tu nous as montré? (Avec les problèmes que j'ai eu à mes débuts, je ne serais pas étonné que ce soit ça qui plante).

  3. #3
    Invité
    Invité(e)
    Par défaut Re
    bon , ce code est généré par visual studio
    lors de l ajout de la datagrid au formulaire,
    moi je nai pas de code d enregistrement dans la base de donné lors de la modification dans une datagrid
    j espere que tu m'aides
    merci
    Dernière modification par Deepin ; 14/03/2012 à 17h07.

  4. #4
    Membre à l'essai
    Homme Profil pro
    Dessinateur-concstructeur en microtechnique
    Inscrit en
    Janvier 2012
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : Dessinateur-concstructeur en microtechnique
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2012
    Messages : 5
    Points : 10
    Points
    10
    Par défaut
    Salut,

    J'ai eu les mêmes problèmes à mes débuts ! Mais j'ai trouvé une solution...

    Commence par définir et ouvrir ta connexion à ta base de données quand tu ouvre ton formulaire :

    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
    Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
     
    'chemin d'accès a ta base Access
    dim path = "C:\Ton\Chemin"
     
    'teste ta connexion
     
    Try
    'défini ta connexion
    TonDGVTableAdapter.Connection.ConnectionString = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" & path & ";Persist Security Info=False"
    'ouvre et ferme la connexion (ne pas oublier de la fermer !)
    Me.TonDGVTableAdapter.Connection.Open()
    Me.TonDGVITableAdapter.Connection.Close()
     
    'gère ton exception
    Catch ex As Exception
    MsgBox("Impossible de se connecter aux données.", vbCritical + vbOKOnly, "Connexion aux bases de données")
    End Try
    Je pense que tu utilise le bouton d'enregistrement par défaut du bindingNavigator... Je te conseil d’appeler un sub car d'autres actions peuvent générer un enregistrement (ex: fermeture du formulaire avec msgbox demandant si l'utilisateur veut sauvegarder les modifs)

    Donc le code ton bouton sauvegarde:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Private Sub TonDGVBindingNavigatorSaveItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TonDGVBindingNavigatorSaveItem.Click
            Call save()
        End Sub
    Dans ton sub appelé save:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    Public Sub save()
    Try
    Me.TonDGVBindingSource.EndEdit()
    Me.TableAdapterManager.UpdateAll(Me.TonDGVDataSet1)
    Catch ex As Exception
    MsgBox("Un problème est survenu lors de l'enregistrement des données. ", vbOKOnly + vbCritical, "Erreur lors de l'enregistrement")
    End Try
    End Sub
    En suivant ceci normalement cela devrait passer. Si ça ne passe pas enlève les TRY et regarde si le debugger te trouve une erreur et reviens me voir

    En espérant pouvoir t'aider !

    Ciao

  5. #5
    Invité
    Invité(e)
    Par défaut
    ca fonctionne
    merci beaucoup !
    Dernière modification par Deepin ; 14/03/2012 à 17h08.

Discussions similaires

  1. [MySQL] Insérer une date dans la base données
    Par pi-2r dans le forum PHP & Base de données
    Réponses: 4
    Dernier message: 20/04/2010, 22h22
  2. modification d'une insertion dans la base
    Par smiles dans le forum Servlets/JSP
    Réponses: 0
    Dernier message: 01/04/2010, 01h56
  3. Réponses: 3
    Dernier message: 15/03/2007, 21h33
  4. [VBA-E] afficher les données d'une datagrid dans des zones de textes
    Par fadwa dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 12/05/2006, 14h51
  5. comment inserer les entrée d'une formulaire dans MySQL
    Par horri dans le forum SQL Procédural
    Réponses: 3
    Dernier message: 28/02/2006, 20h16

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo