2014-01-26 66 views
0

我的搜索代碼正在工作,但在刪除了我搜索的字符串後,listview中的數據將進入不確定的排序狀態。我最初的排序是首先顯示接近其到期日期的項目。VB6.0在列表視圖上搜索

我有4個領域

Sub LoadData() 
Dim list As ListItem 
Dim x As Integer 
    ConnectDB 
    rs.Open "Select * from Table1 Order by Expiry ASC", db, 3, 3 
     Do Until rs.EOF 
      Set list = ListView1.ListItems.Add(, , rs(0)) 
       For x = 1 To 3 
       list.SubItems(x) = rs(x) 
        Next x 
     rs.MoveNext 

    Loop 
Set rs = Nothing 
db.Close: Set db = Nothing 

末次

我的搜索代碼,將整理與搜索欄的第一個字母的產品名稱。 和一個問題,如果你想搜索字串不僅在 的第一個字母,而是在整個字中,什麼是SQL語句。

Private Sub txtSearch_Change() 
ListView1.ListItems.Clear 
ConnectDB 
rs.Open "Select * from Table1 where ProductName LIKE '" & txtSearch & "%'", db, 3, 3 
    Do Until rs.EOF 
     Set list = ListView1.ListItems.Add(, , rs(0)) 
      For x = 1 To 3 
       list.SubItems(x) = rs(x) 
     Next x 
    rs.MoveNext 
    Loop 
Set rs = Nothing 
db.Close: Set db = Nothing 

End Sub 

回答

0

添加%符號在搜索鍵的開頭: 「SELECT * FROM表1,其中產品名稱LIKE '%」 & txtSearch & 「%' ORDER BY產品名稱」

+0

它的工作原理。你在一塊石頭上擊中了兩隻鳥。我現在將在我的項目中工作。 @novian阿貢 – Francis