簡體   English   中英

如何從Datagridview和表中的記錄中刪除行

[英]How to delete row from both Datagridview and the record from the table

在我的datagridview中,您可以選擇一行,然后按一下按鈕,四個字段中的兩個字段的內容將被傳輸到另一個表。 此時,應該從datagridview及其讀取的表中刪除在datagridview中選擇的行。 目前,我可以將我需要的兩個字段放入另一個表中,但是之后很難刪除該記錄。

這是我的代碼:

Dim connString As String = "Provider=Microsoft.ACE.OLEDB.12.0; Data Source=C:\..\RailwayDatabase2.accdb"  
        Dim Con As OleDb.OleDbConnection  
        Dim comm As OleDbCommand  
        Dim rowval As Integer  
        Dim connect, query As String  
        Try  
            rowval = RotorDGV.CurrentCell.RowIndex  
        Catch ex As Exception  
        End Try  

        Dim col1 As String  
        Dim col3 As Date  
        col1 = RotorDGV.Rows(rowval).Cells(1).Value  
        col3 = RotorDGV.Rows(rowval).Cells(3).Value  
        connect = "provider=Microsoft.ACE.OLEDB.12.0; Data Source = C:\..\RailwayDatabase2.accdb"  
        query = "INSERT INTO tbl_shifts (EmployeeName, ShiftDate) VALUES(""" & col1 & """,""" & col3 & """);"  
        Con = New OleDb.OleDbConnection(connect)  
        comm = New OleDb.OleDbCommand(query, Con)  
        Con.Open()  
        comm.ExecuteNonQuery()  

我需要刪除的行當前等於RotorDGV.CurrentCell.RowIndex或'Rowval'。

有人可以告訴我單擊此按鈕時如何從表和datagridview中刪除此記錄。 謝謝

完成插入語句執行查詢之后。

重復刪除台站的過程並再次執行查詢。然后從datagridview中 刪除一行。

Dim connString As String = "Provider=Microsoft.ACE.OLEDB.12.0; Data Source=C:\..\RailwayDatabase2.accdb"  
        Dim Con As OleDb.OleDbConnection  
        Dim comm As OleDbCommand  
        Dim rowval As Integer  
        Dim connect, query As String  
        Dim col1 As String  
        Dim col3 As Date 


 Private Sub RotorDGV_CellClick(sender As Object, e As DataGridViewCellEventArgs) Handles RotorDGV.CellClick
        Try
            rowval= DataGridView1.CurrentCell.RowIndex  
        Catch ex As Exception

        End Try
  End Sub

在按鈕單擊事件中,執行以下所有代碼。

  1. 插入語句
        col1 = RotorDGV.Rows(rowval).Cells(1).Value  
        col3 = RotorDGV.Rows(rowval).Cells(3).Value  
         query = "INSERT INTO tbl_shifts (EmployeeName, ShiftDate) VALUES(""" & col1 & """,""" & col3 & """);"  
        Con = New OleDb.OleDbConnection(connString)  
        comm = New OleDb.OleDbCommand(query, Con)  
        Try
        Con.Open()  
        comm.ExecuteNonQuery() 
        Con.Close() 
        Catch ex As Exception
        Con.Close() 
        End Try
  1. 刪除聲明
        query = "DELETE STAEMENT"
        Con = New OleDb.OleDbConnection(connString)  
        comm = New OleDb.OleDbCommand(query, Con)  
        Try
        Con.Open()  
        comm.ExecuteNonQuery() 
        Con.Close() 
        Catch ex As Exception
        Con.Close() 
        End Try
  1. 從Datagridview刪除行
RotorDGV.Rows.RemoveAt(rowval)

希望對您有所幫助,或者至少您會得到提示。

您可以運行存儲過程來刪除嗎? 我將傳遞刪除記錄所需的參數。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM