Sqlserver
 sql >> Base de données >  >> RDS >> Sqlserver

VB 2008 - SQL Server 2005 - DataGridView - bouton de mise à jour - écrire les modifications dans la base de données

Le sujet est vaste. Vous trouverez ci-dessous un exemple utilisant DataTable et DataAdapter. DataTable est utilisé pour conserver les données de la base de données et suivre les modifications apportées par l'utilisateur à des lignes spécifiques lorsqu'il est lié à la grille. L'adaptateur génère le sql nécessaire pour exécuter les commandes de mise à jour et de suppression à condition d'avoir un SQL SELECT valide. Il existe de nombreuses façons d'accomplir ce que vous voulez, cependant, ceci n'est qu'un exemple de ce que vous pouvez faire. Après avoir jeté un coup d'œil au code ci-dessous, vous voudrez peut-être creuser plus profondément dans des classes spécifiques pour en savoir plus à leur sujet et les adapter à vos besoins.

Remarque :Votre chaîne de connexion et les noms de variables dans votre cas peuvent différer de ce qui est affiché dans cette liste :

Imports System.Data.SqlClient
Public Class Form1
    Dim connetionString As String
    Dim connection As SqlConnection
    Dim adapter As SqlDataAdapter
    Dim cmdBuilder As SqlCommandBuilder
    Dim ds As New DataSet
    Dim changes As DataSet
    Dim sql As String
    Dim i As Int32

    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        connetionString = "Data Source=ServerName;Initial Catalog=DatabaseName;User ID=UserName;Password=Password"
        connection = New SqlConnection(connetionString)
        sql = "select * from Product"
        Try
            connection.Open()
            adapter = New SqlDataAdapter(sql, connection)
            adapter.Fill(ds)
            connection.Close()
            DataGridView1.DataSource = ds.Tables(0)
        Catch ex As Exception
            MsgBox(ex.ToString)
        End Try
    End Sub

    Private Sub btnupdate_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
        '*** Process updates as made by the user in the datagridview control.
        Try
            cmdBuilder = New SqlCommandBuilder(adapter)
            changes = ds.GetChanges()
            If changes IsNot Nothing Then
                adapter.Update(changes)
            End If
            MsgBox("Changes Done")
        Catch ex As Exception
            MsgBox(ex.ToString)
        End Try
    End Sub
End Class

Adapté de la source :http://vb.net-informations.com /dataadapter/dataadapter-datagridview-sqlserver.htm