删除表记录,但不重复

时间:2019-04-09 05:06:53

标签: vb.net ms-access

我的数据库包含具有相同数据的多行,可以,但是当我删除一个行时,它将删除其他行。我该如何操作此代码,以便仅删除其中一行,而不是删除所有名称与nametxt.Text相对应的行?例如

 Dim conn As New OleDbConnection
        conn = New OleDbConnection
        dbprovider = "Provider=Microsoft.ACE.OLEDB.12.0;"
        Dim databasePath = "Data Source = FULL YUGIOH ACCESS DATABASE.accdb;"
        conn.ConnectionString = dbprovider & databasePath
        Dim Stringc As String = "delete from sampledeck33 where name='" & nametxt.Text & "'"
        Dim command As OleDbCommand = New OleDbCommand(Stringc, conn)


        Try
            conn.Open()
            command.ExecuteNonQuery()
            command.Dispose()
            conn.Close()

        Catch ex As Exception
            MsgBox(ex.Message)

        Finally
            conn.Dispose()

        End Try

1 个答案:

答案 0 :(得分:0)

您要删除所有具有特定名称的记录,而必须在ID或姓氏等行中具有唯一值,或者使该行具有唯一性的内容,然后检查id和name,否则包含该名称的每一行都会被删除。另外,如果您别无选择,只想删除一个,则可以使用“ order by id desc limit 1”,然后只删除一个。