0

ここで問題がありますvb.net

ここに、テーブルのフィールド ( idname、 )を持つデータベースに接続されたプログラムがあります。quantitytbl_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()
4

1 に答える 1