【发布时间】:2020-04-20 14:32:33
【问题描述】:
我在 access 数据库中有库存接收表,其中 productID 重复了很多次。我可以在列表视图中填充这些数据。 目前,当我在列表视图中选择任何行并按下删除按钮时,所选产品 ID 的所有条目都会从列表视图以及数据库中从头到尾删除。 我想要的是,如果我在列表视图中选择任何项目并按下删除按钮,只有选定的行应该从列表视图中删除,而不是从数据库中删除,即使它是相同的 productid。 如果有人可以请帮助我?请看下面的代码。
Private Sub Button9_Click(ByVal sender As Object, ByVal e As EventArgs) Handles Button9.Click
Dim item1 As ListViewItem
item1 = ListView1.SelectedItems(0)
Dim Del As DialogResult
Del = MessageBox.Show("Are you sure you want to delete the record", "Delete Record", MessageBoxButtons.YesNo, MessageBoxIcon.Question)
If Del = DialogResult.Yes Then
'Dim item As ListViewItem
con.Open()
Dim sql As String = "DELETE FROM Receipt WHERE ProductID='" & item1.SubItems(0).Text & "'"
With cmd
.CommandText = sql
.Connection = con
.ExecuteNonQuery()
End With
MsgBox("Record Removed", MsgBoxStyle.Information)
End If
con.Close()
End Sub
【问题讨论】:
-
如果您需要帮助,您必须向我们展示给您带来问题的代码。
-
我已经添加了代码。请提出必要的更改以获得所需的结果。
-
使用参数避免sql注入和格式化错误。 ExecuteNonQuery 在运行时返回一个数字。看看这个数字是多少。这是一个调试问题——学习调试器的好日子。
-
你能展示一些示例编码吗???
标签: vb.net winforms listview ms-access