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 :

Mise a jour datagridview


Sujet :

VB.NET

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Inscrit en
    Novembre 2007
    Messages
    12
    Détails du profil
    Informations forums :
    Inscription : Novembre 2007
    Messages : 12
    Par défaut Mise a jour datagridview
    Salut
    (mon projet c gestion d'une ecole:les outilles utilisés:VS2005+Sql server 2000
    bon voila mon prbléme:j'ai besoin d emettre à jour mes données stocké dans la base de donnée apartir d'une datagridview.j déja essayer ça et ca marche mais pas tt le temps
    parexemple :j'ai une table module(num-module,libellé-module) pour afficher les données de cette table dans la gridview c simple aussi pr la mise à jour ca marche voila le code
    "" myconex.Open()
    command = New SqlCommand(select *from module, myconex)
    adapter = New SqlDataAdapter(command)
    adapter.Fill(dataset, table)
    grid.DataSource = dataset.Tables(table) ""
    Mais dans le cas ou je ve extraire de sinfos a partir du differents tables (besoin de jointure et procédure stocké pr l'affichage de ces infos dans la gridview)
    "code utilisé:" myconex.Open()
    command = New SqlCommand(affiche-eleve, myconex)
    adapter = New SqlDataAdapter(command)
    adapter.Fill(dataset, table)
    grid.DataSource = dataset.Tables(table)"
    N.B=> affiche-eleve c la procédure stocké ke j la fait pour afficher mes infos car ils sont séparer j besoin de jointure
    dans ce cas je ne vien pas de mettre à jour ma base de donné il m'a donne l'error sur la procédure il ne peut pa mettre à jour a partir de cette dérnier !
    doonc svp j besoin d evotre aide vraiment je ss bloké dans cette partie et j'ai besoin de ça
    je vs attend merci d'avance

  2. #2
    Membre Expert
    Avatar de olsimare
    Inscrit en
    Décembre 2006
    Messages
    1 182
    Détails du profil
    Informations forums :
    Inscription : Décembre 2006
    Messages : 1 182
    Par défaut
    Bonjour.

    Tu ne peux pas faire simplement de mises à jour à partir d'une datatable d'un dataset issue d'un jointure.

    Donc, soit tu travailles sur une seule table, soit tu codes la procédure de MAJ à la main.

    PS : Attention au style quand tu postes... une petite relecture ne fait pas de mal.

    Cdt.

  3. #3
    Membre averti
    Inscrit en
    Novembre 2007
    Messages
    12
    Détails du profil
    Informations forums :
    Inscription : Novembre 2007
    Messages : 12
    Par défaut
    Merci pour votre attention
    mais je ne peu pas laisser les autres table je suis obligé de les affiché et de les mettre à jour.bon je vé t'explique encore ma situation.j'ai un formulaire contient une DatagridView dans cette dérnier je doi afficher les infos stocké dans la table éleve(N°,nom,prénom,Tél,Group,"(Branche,niveau :sont stocké dans les tables niveau et branche)") voila la procédure ki affiche ça:
    CREATE procedure affeleve
    as
    SELECT dbo.eleve.[n°eleve], dbo.eleve.nom, dbo.eleve.prenom, dbo.eleve.Adress, dbo.eleve.Tél, dbo.eleve.[date inscription], dbo.branche.branche,
    dbo.niveau.niveau, dbo.groups.[libellé]
    FROM dbo.branche INNER JOIN
    dbo.groups ON dbo.branche.[n°branche] = dbo.groups.[n°branche] INNER JOIN
    dbo.eleve ON dbo.groups.[n°group] = dbo.eleve.[n°group] INNER JOIN
    dbo.niveau ON dbo.groups.[n°niveau] = dbo.niveau.[n°niveau]

    j'ai pas des probléme dans l'affichage tt va bien
    mais j'ai besoin de mettre à jour ma base d e donnée on sais ke DataGridViw permet l'utilisateur dinsere de modifier ou de supprimer un enregistrement et donc dans ce cas je n'arrive pas a réaliser ca car j une procédure stocké et j'ai besoin d eplisiuer table
    mais dans le cas contraire quand j'ai les infos stockés dans la même table j trouvé la solutin voila le code
    "" Dim matable As DataTable = dataset.Tables(table)

    Dim cmdbuild As SqlCommandBuilder
    cmdbuild = New SqlCommandBuilder(adapter)
    adapter.UpdateCommand = cmdbuild.GetUpdateCommand
    adapter.InsertCommand = cmdbuild.GetInsertCommand
    adapter.DeleteCommand = cmdbuild.GetDeleteCommand
    Dim tans As SqlTransaction = myconex.BeginTransaction
    adapter.UpdateCommand.Transaction = tans
    adapter.InsertCommand.Transaction = tans
    adapter.DeleteCommand.Transaction = tans
    Try
    adapter.Update(matable)
    tans.Commit()
    matable.AcceptChanges()
    adapter.Update(dataset, table)
    MessageBox.Show("l'opération effectuer ", "msgbox Information", MessageBoxButtons.OK, MessageBoxIcon.Information)

    Catch ex As SqlException
    tans.Rollback()
    matable.RejectChanges()
    MessageBox.Show(ex.Message, "msgbox Error", MessageBoxButtons.OK, MessageBoxIcon.Error)

    End Try ""ca marche bien quan je ve affiicher les branche(n°branche,libellé branche)dans la datagridview et aussi je vien de mettre à jour cette ta blae a partir des modification ke j'effectué dans la DGRVW (par ce code )
    j'epére ke tu m'a bien comprend maintenat
    que ce que je doi fiare SVP

  4. #4
    Membre Expert
    Avatar de olsimare
    Inscrit en
    Décembre 2006
    Messages
    1 182
    Détails du profil
    Informations forums :
    Inscription : Décembre 2006
    Messages : 1 182
    Par défaut
    Re.

    J'ai bien compris ton probléme, mais comme je le disais, ça n'est pas possible de mettre à jour une datatable issue de jointure.

    Au vue de ton code SQL, je te conseille d'utiliser des colonnes DataGridViewComboBoxColumn pour afficher la branche, le niveau et le libellé du group.

    Ainsi, tu te limiteras à l'utilisation d'une seule table, la table élève.

    Cdt.

  5. #5
    Membre averti
    Inscrit en
    Novembre 2007
    Messages
    12
    Détails du profil
    Informations forums :
    Inscription : Novembre 2007
    Messages : 12
    Par défaut
    Re
    Merci bcp
    la vérité je suis une débutante j jamias utilisé ce contrôle mais je vé essayer maintenat tu peu mieux m'expliquer comment je vé faire
    je te remercie enormément

  6. #6
    Membre averti
    Inscrit en
    Mai 2007
    Messages
    22
    Détails du profil
    Informations personnelles :
    Âge : 48

    Informations forums :
    Inscription : Mai 2007
    Messages : 22
    Par défaut
    Ouah, çà pique les yeux l'orthographe là

Discussions similaires

  1. Mise a jour DataGridView
    Par noovice dans le forum VB.NET
    Réponses: 0
    Dernier message: 17/04/2011, 16h18
  2. Problème mise a jour dataGridView
    Par Nandou56 dans le forum Windows Forms
    Réponses: 4
    Dernier message: 06/03/2010, 14h50
  3. Mise a jour datagridview
    Par santacrus dans le forum Windows Forms
    Réponses: 3
    Dernier message: 14/07/2009, 15h05
  4. [.NET] Mise a jour DataGridView -> BDD
    Par chepac dans le forum VB.NET
    Réponses: 3
    Dernier message: 16/06/2009, 14h31
  5. mise a jour des donnèe entre DataGridView et MySQL
    Par TheBlackReverand dans le forum VB.NET
    Réponses: 1
    Dernier message: 18/06/2007, 20h47

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