ここで問題がありますvb.net
。
ここに、テーブルのフィールド ( id
、name
、 )を持つデータベースに接続されたプログラムがあります。quantity
tbl_report
ID
私のプログラムの一部は、選択したアイテムと等しいレコードを削除することですcbOrderNo
cbOrderNo の項目は、テーブルの ID です。したがって、レコードが削除されると、cbOrderNo
想定されるアイテムが差し引かれます。
たとえば、テーブルに 4 つのレコードがあるため、フォームの読み込み中に 4 つの項目がcbOrderNo
あり、ユーザーがコンボボックスの項目の 1 つを選択すると、レコードが削除されるため、3 つのレコードが残り、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()