我在vb.net
上遇到了问题。
我这里有一个程序连接到一个数据库,其中包含表id
name
,quantity
,tbl_report
)
我的部分程序是删除ID
等于cbOrderNo
cbOrderNo的项目是表格中的ID。因此,当删除记录时,应该扣除cbOrderNo
的项目。
因此,例如,表中有4条记录,因此在表单加载期间cbOrderNo
中将有4个项目,当用户选择组合框中的1个项目时,记录将被删除,因此3记录将被保留,因此cbOrderNo
我的程序正在做的是,在剩下3个记录之后,组合框中仍然会有4个项目。我想要的是只显示3个项目。
Dim qryDelete As String = "DELETE FROM tbl_report WHERE ID=" & cbOrderNo.SelectedItem & ""
ExecNonQuery(qryDelete)
MsgBox("Record Deleted")
query.Close()
cbOrderNo.Items.Clear()
cmd.CommandText = "SELECT * FROM tbl_report ORDER BY ID"
cmd.Connection = con
Dim rdrOLEDB As OleDbDataReader = cmd.ExecuteReader
While(rdrOLEDB.Read())
cbOrderNo.Items.Add(rdrOLEDB.GetValue(0))
MsgBox(cbOrderNo.Items.Count)
End While
MsgBox(cbOrderNo.Items.Count)
cbOrderNo.SelectedIndex = 0
rdrOLEDB.Close()
答案 0 :(得分:0)
试试这个......
Dim qryDelete As String = "DELETE FROM tbl_report WHERE ID=" & cbOrderNo.SelectedItem & ""
ExecNonQuery(qryDelete)
MsgBox("Record Deleted")
query.Close()
cbOrderNo.Items.Remove(cbOrderNo.SelectedItem) 'there is no point in recalling the database, just remove it from the list.