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

Accès aux données Discussion :

Mise à jour bd sql server 2008 à partir du datagridview sous vb.net 2010


Sujet :

Accès aux données

  1. #1
    Futur Membre du Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Décembre 2014
    Messages
    9
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 34
    Localisation : Cameroun

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Enseignement

    Informations forums :
    Inscription : Décembre 2014
    Messages : 9
    Points : 6
    Points
    6
    Par défaut Mise à jour bd sql server 2008 à partir du datagridview sous vb.net 2010
    Bonjour à tous,

    j'ai un souci avec la mise à jour de ma base de données (SDZ) créee sous SQL SERVER 2008, à partir d'un datagridview. Je voudrais surtout pouvoir répercuter les modifications effectuées dans le datagrid directement dans la base.

    Voici mon code:

    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 Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
            Dim Connexion As New SqlConnection("Data Source=localhost;Initial Catalog=SDZ;User Id=sa;Password=herve;")
            Dim ds As New DataSet
            Try
                Connexion.Open()
            Catch ex As Exception
                MsgBox(("Erreur lors de la connexion à la BDD... Vérifiez votre connexion ou contactez votre administrateur.."), MessageBoxButtons.OK)
                Me.Close()
            End Try
            Dim Requete As String = "SELECT * from Musiques"
            Dim Commande As New SqlCommand(Requete, Connexion)
            Dim Adaptateur As New SqlDataAdapter(Commande)
            Try
                Adaptateur.Fill(ds, "SELECT * from Musiques")
                'Liaison avec le DataGrid
            Catch ex As Exception
                Console.WriteLine(ex.Message)
            End Try
            Me.DGV.DataSource = ds.Tables("SELECT * from Musiques").DefaultView
        End Sub
    Erreur en pj.modif.docx

    Merci d'avance pour votre aide et pardon pour la forme de mon message

  2. #2
    Membre régulier
    Homme Profil pro
    Étudiant
    Inscrit en
    Septembre 2013
    Messages
    100
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Cameroun

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Septembre 2013
    Messages : 100
    Points : 110
    Points
    110
    Par défaut mise à jour sqldatagridview
    pour faire la mise à jour dans ton datagrid, il faut utiliser la fonction sql UPDATE que tu devra passer tout juste après la fonction SELECT. par exemple : dim update AS new sqlclient.sqlcommand("UPDATE tatable SET id, champsuivant...",connection) ceci te permet de prendre les enregistrements modifiés

  3. #3
    Membre à l'essai
    Homme Profil pro
    Responsable de service informatique
    Inscrit en
    Mai 2015
    Messages
    19
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Vienne (Poitou Charente)

    Informations professionnelles :
    Activité : Responsable de service informatique
    Secteur : Conseil

    Informations forums :
    Inscription : Mai 2015
    Messages : 19
    Points : 15
    Points
    15
    Par défaut
    Bonjour,

    Tu travailles en mode connecté ou déconnecté parce que la mise à jour d’une base de données se fait différemment dans les deux cas...

  4. #4
    Membre régulier
    Homme Profil pro
    Étudiant
    Inscrit en
    Septembre 2013
    Messages
    100
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Cameroun

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Septembre 2013
    Messages : 100
    Points : 110
    Points
    110
    Par défaut mise à jour
    voici un exemple de code en mode connecté

    Code vb.net : 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 Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
            'un exemple de mise à jour sur serveur
            Try
                'ligne de connection
                Dim Connexion As New SqlClient.SqlConnection("Data Source=.\sqlexpress;Initial Catalog=labo;integrated security=true")
                Connexion.Open()
                'fonction sql de mise à jour par deux textbox dans la table table1 dont 'un' est l'id NB: ceci modifie une ligne de la table
                Dim cup As New SqlClient.SqlCommand("update table1 set un=@un, deux=@deux where un=@p", Connexion)
                'création des paramètres de mise à jour sur textbox
                cup.Parameters.Add("@un", SqlDbType.NChar).Value = TextBox1.Text
                cup.Parameters.Add("@deux", SqlDbType.NVarChar).Value = TextBox2.Text
                cup.Parameters.Add("@p", SqlDbType.NVarChar).Value = TextBox1.Text
                'execution de la requete
                cup.ExecuteNonQuery()
                Connexion.Close()
            Catch ex As Exception
                MsgBox(ex.Message)
     
            End Try
        End Sub

  5. #5
    Futur Membre du Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Décembre 2014
    Messages
    9
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 34
    Localisation : Cameroun

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Enseignement

    Informations forums :
    Inscription : Décembre 2014
    Messages : 9
    Points : 6
    Points
    6
    Par défaut
    Merci beaucoup pr vos réponses, je travaille en mode connecté et je souhaite que les modifications faites ds le datagridview se répercutent dans ma base de données sous SQL SERVER. Le code que j'ai développé ne arche malheureusement pas.

    Merci de m'aider.

  6. #6
    Membre régulier
    Homme Profil pro
    Étudiant
    Inscrit en
    Septembre 2013
    Messages
    100
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Cameroun

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Septembre 2013
    Messages : 100
    Points : 110
    Points
    110
    Par défaut connection sql
    en mode connecté, le code que je t'ai envoyé permet la modification ou la mise à jour que dans les textboxs passés en paramètre.
    ce que tu veux est facilement praticable en mode déconnecté, en créant ton code sur l'evenement change value dans le feuille de propriété en tapant ce code:

    me.validate()
    me.votretable1.bindingsource.endedit()
    me.tablemanagertableadapter.updateall(me.votrebddataset)

  7. #7
    Futur Membre du Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Décembre 2014
    Messages
    9
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 34
    Localisation : Cameroun

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Enseignement

    Informations forums :
    Inscription : Décembre 2014
    Messages : 9
    Points : 6
    Points
    6
    Par défaut
    Merci pr vos réponses. Voici mon nouveau code ainsi que l'erreur générée (en pj).

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
            Dim Connexion As New SqlConnection("Data Source=localhost;Initial Catalog=mabase;User Id=sa;Password=*****;")
            Connexion.Open()
     
            Dim i As Integer = 0
            ''Récuperer ligne par ligne
            For i = 0 To (DataGridView1.RowCount - 2)
     
                Dim Requete As String = "Insert into matable values ('" & Me.DataGridView1.Item(0, i).Value & "', " & Me.DataGridView1.Item(1, i).Value & ")"
                Dim Commande As New SqlCommand(Requete, Connexion)
                Commande.ExecuteNonQuery()
            Next
            Connexion.Close()
        End Sub
    Fichiers attachés Fichiers attachés

  8. #8
    Membre régulier
    Homme Profil pro
    Étudiant
    Inscrit en
    Septembre 2013
    Messages
    100
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Cameroun

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Septembre 2013
    Messages : 100
    Points : 110
    Points
    110
    Par défaut Mise a jour
    bsr
    je ne vois pas dans ton code une mise à jour mais plutôt une fonction d'insertion!!
    donc surement ton pb n'était pas précise.
    c'est bien si tu as enfin trouvé la solution

Discussions similaires

  1. [Débutant] Mise a jour bd sql server 2008 à partir du code vb.net
    Par TERRACHER dans le forum Accès aux données
    Réponses: 5
    Dernier message: 30/06/2015, 11h51
  2. Mise à jour KB SQL server 2008
    Par CoeurDeSQL dans le forum Administration
    Réponses: 4
    Dernier message: 04/04/2014, 15h39
  3. Réponses: 2
    Dernier message: 26/07/2011, 16h49
  4. Mise à jour vers SQL Server 2005
    Par lasmartres@lafa.fr dans le forum MS SQL Server
    Réponses: 3
    Dernier message: 19/10/2007, 08h31
  5. Réponses: 5
    Dernier message: 20/09/2006, 11h26

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