2017-12-26 2 views
-1

데이터베이스 액세스를 사용하여 검색 상자/바를 만들려고합니다. 코드에서 레코드를 검색 한 다음 다른 레코드를 검색 할 때 목록 상자에서 레코드를 제거하거나 숨길 수 있습니다. 내 프로그램은 레코드 검색을 표시하고 표시하지만 문제는 거의 없습니다.목록 상자를 사용하여 알고리즘 검색

  1. 다시 검색 할 때 레코드를 제거하거나 숨기지 않습니다.
  2. 레코드가 데이터베이스에 없거나 검색 상자가 비어있는 경우 응답하지 않습니다.

나는 또한 동적 검색 창에이를하고 싶습니다
Dim con As New OleDbConnection("Provider=Microsoft.jet.oledb.4.0;data source=C:\Users\jacob\Desktop\MS Office\project.mdb") 
    Dim cmd As OleDbCommand = New OleDbCommand("SELECT * FROM tblProduct WHERE productID LIKE '" & txtSearch_Bar.Text & "'", con) 
    con.Open() 
    Dim sdr As OleDbDataReader = cmd.ExecuteReader() 

    While (sdr.Read()) 

     lstbSearchResult.Items.Add(sdr("ProductID")) 

    End While 

.

+0

1, 새 항목을 추가하기 전에 목록을 지 웁니다. 2. 반드시 "응답"하면 아무 것도 표시되지 않습니다. 당신은 그걸 확인하실 수 있습니다. 당신은 그 중 일부를 버려야합니다 - '사용하기'문에서 읽으십시오 4. [ask]를 읽으시 고 [둘러보기] – Plutonix

+0

을 읽으십시오. 앱이 더 경제적이면서 더 빠를 수도 있습니다. 단순히 필터링하는 DataSource를 사용합니다. SQL 매개 변수에 대해서도 공부하십시오. – Plutonix

+0

어떻게 목록 상자에서 데이터를 제거합니까? - @Plutonix – SUNIL

답변

0

첫 번째 요구 사항은 의견에 반영되어 있다고 생각합니다. 두 번째 요구 사항의 경우 While 루프 앞에 다음을 추가하십시오.

If Not sdr.HasRows Then 
    MessageBox.Show("No Matches") 
    Exit Sub 
End If 
관련 문제