我想要的是将选定的列表视图项放入变量中。更重要的是选中的特定条目,以便我可以从数据库中删除它。
我的代码:
For Each i As ListViewItem In lstViewMembers.SelectedItems
lstViewMembers.Items.Remove(i)
Dim Remove As String
Remove = lstViewMembers.Items(0)
sql = "DELETE FROM tblMembers WHERE Name = '" & Remove & "'"
da = New OleDb.OleDbDataAdapter(sql, con)
da.Fill(ds, "Remove")
Next
名称是列表视图中的第二列,如何使用名称从数据库中删除所选人员?
谢谢,
安迪
答案 0 :(得分:0)
我假设con是一个活动且开放的连接,而不仅仅是一个连接字符串。
为了1)做出最小的改变,2)从数据库中删除它,3)将删除的项留在VB列表中,这就是我要做的。我对DataAdapters非常不熟悉 - 我知道有一种方法可以删除它们,但我还没有使用它。
Dim Remove As String
For Each itemToDelete As ListViewItem In lstViewMembers.SelectedItems
Remove = itemToDelete.Text
sql = "DELETE FROM tblMembers WHERE Name = '" & Remove & "'"
SqlCommand cmd = New SqlCommand (sql, con)
cmd.ExecuteNonQuery()
Next
确保之后关闭并删除连接 - 连接很昂贵。有关这种方法,请参阅https://msdn.microsoft.com/en-us/library/system.data.sqlclient.sqlcommand.executenonquery(v=vs.110).aspx?cs-save-lang=1&cs-lang=vb#code-snippet-2
为了降低sql注入风险,请在此处查看参数的使用https://msdn.microsoft.com/en-us/library/system.data.sqlclient.sqlcommand.parameters%28v=vs.110%29.aspx