VB.NET MYSQL DataGridView 增删改查(INSERT,SELECT,UPDATE,DELETE)

VB.NET MYSQL DataGridView 增删改查(INSERT,SELECT,UPDATE,DELETE)

留存备用。

Imports MySql.Data.MySqlClient
 
 
Public Class Form1
 
 
    ' GLOBAL DECLARATIONS
    Dim conString As String = "Server=localhost;Database=net2;Uid=root;Pwd=123456;"
    Dim con As New MySqlConnection(conString)
    Dim cmd As MySqlCommand
    Dim adapter As MySqlDataAdapter
    Dim dt As New DataTable()
 
    Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
        'CONSTRUCT DATAGRIDVIEW
        DataGridView1.ColumnCount = 4
 
        DataGridView1.Columns(0).Name = "ID"
        DataGridView1.Columns(1).Name = "Name"
        DataGridView1.Columns(2).Name = "Position"
        DataGridView1.Columns(3).Name = "Team"
 
        DataGridView1.SelectionMode = DataGridViewSelectionMode.FullRowSelect
 
    End Sub
    'CLEAR TXT
    Private Sub cleartxt()
        nameTxt.Text = ""
        PosTxt.Text = ""
        TeamTxt.Text = ""
    End Sub
 
 
    'INSERT INTO DB
    Private Sub Add()
        Dim sql As String = "INSERT INTO peopletb(Name,Position,Team) VALUES(@PNAME,@POSITION,@TEAM)"
 
        cmd = New MySqlCommand(sql, con)
 
        'PARAMETERS
        cmd.Parameters.AddWithValue("@PNAME", nameTxt.Text)
        cmd.Parameters.AddWithValue("@POSITION", PosTxt.Text)
        cmd.Parameters.AddWithValue("@TEAM", TeamTxt.Text)
 
        'OPEN CONNECTION And INSERT
        Try
            con.Open()
 
            If cmd.ExecuteNonQuery() > 0 Then
                MsgBox("Successfully Inserted")
                cleartxt()
            End If
 
            con.Close()
            retrieve()
        Catch ex As Exception
            MsgBox(ex.Message)
            con.Close()
        End Try
    End Sub
 
    'POPULATE DGVIEW
    Private Sub Populate(id As String, name As String, pos As String, team As String)
        Dim row As String() = New String() {id, name, pos, team}
 
        'ADD ROW TO ROWS COLLEC
        DataGridView1.Rows.Add(row)
    End Sub
 
 
    Private Sub retrieve()
        DataGridView1.Rows.Clear()
 
        'SQL STMT
        Dim sql As String = "SELECT * FROM peopletb"
        cmd = New MySqlCommand(sql, con)
 
        'OPEN CON,RETRIEVE,FILL,DGVIEW
        Try
            con.Open()
            adapter = New MySqlDataAdapter(cmd)
 
            adapter.Fill(dt)
 
            'FILL DGVIEW
            For Each row In dt.Rows
                Populate(row(0), row(1), row(2), row(3))
            Next
 
            con.Close()
 
            'CLEAR DT
            dt.Rows.Clear()
        Catch ex As Exception
            MsgBox(ex.Message)
            con.Close()
        End Try
 
    End Sub
 
    'UPDATE
    Private Sub UpdateDG(id As String)
        Dim sql As String = "UPDATE peopletb SET Name='" + nameTxt.Text + "',Position='" + PosTxt.Text + "',Team='" + TeamTxt.Text + "'WHERE ID='" + id + "'"
 
        'OPEN CON,EXEUTE UPDATE,CLOSE
        Try
            con.Open()
            adapter.UpdateCommand = con.CreateCommand()
            adapter.UpdateCommand.CommandText = sql
 
            If adapter.UpdateCommand.ExecuteNonQuery() > 0 Then
                MsgBox("Successfully Updated")
                cleartxt()
            End If
 
            con.Close()
 
            'REFRESH
            retrieve()
 
        Catch ex As Exception
            MsgBox(ex.Message)
            con.Close()
        End Try
    End Sub
 
    'delete
    Private Sub deleteDG(id As String)
        Dim sql As String = "DELETE FROM peopletb WHERE ID='" + id + "'"
 
        cmd = New MySqlCommand(sql, con)
 
        'OPEN CON,EXECUTE UPDATE,CLOSE CON
        Try
            con.Open()
            adapter.DeleteCommand = con.CreateCommand()
            adapter.DeleteCommand.CommandText = sql
 
            'PROMPT FOR CONFIRMATION
            If MessageBox.Show("sure??", "DELETE", MessageBoxButtons.OKCancel, MessageBoxIcon.Warning) = Windows.Forms.DialogResult.OK Then
                If cmd.ExecuteNonQuery() > 0 Then
                    MsgBox("Successfully Deleted")
                End If
            End If
 
            con.Clone()
            retrieve()
        Catch ex As Exception
            MsgBox(ex.Message)
            con.Close()
        End Try
 
    End Sub
 
    Private Sub DataGridView1_MouseClick(sender As Object, e As MouseEventArgs) Handles DataGridView1.MouseClick
        Dim name As String = DataGridView1.SelectedRows(0).Cells(1).Value
        Dim position As String = DataGridView1.SelectedRows(0).Cells(2).Value
        Dim team As String = DataGridView1.SelectedRows(0).Cells(3).Value
 
        nameTxt.Text = name
        PosTxt.Text = position
        TeamTxt.Text = team
 
 
    End Sub
 
    Private Sub addBtn_Click(sender As Object, e As EventArgs) Handles addBtn.Click
        Add()
    End Sub
 
    Private Sub retrieweBtn_Click(sender As Object, e As EventArgs) Handles retrieweBtn.Click
        retrieve()
    End Sub
 
    Private Sub UpdateBtn_Click(sender As Object, e As EventArgs) Handles UpdateBtn.Click
        Dim id As String = DataGridView1.SelectedRows(0).Cells(0).Value
        ' MsgBox(id)
        UpdateDG(id)
    End Sub
 
    Private Sub DeleteBtn_Click(sender As Object, e As EventArgs) Handles DeleteBtn.Click
        Dim id As String = DataGridView1.SelectedRows(0).Cells(0).Value
        deleteDG(id)
    End Sub
 
End Class
上一篇:VB学习之路 ——基本语句


下一篇:VB.net WinForm如何写一个分线程进度条