會員登錄 - 用戶注冊 - 網(wǎng)站地圖 Office中國(office-cn.net),專業(yè)Office論壇
當(dāng)前位置:主頁 > 技巧 > Access技巧 > 數(shù)據(jù)庫系統(tǒng) > 正文

對ADO記錄集進(jìn)行多列查找

時(shí)間:2013-07-12 16:26 來源:office中國 作者:魚兒游游 閱讀:
      我們在操作數(shù)據(jù)庫的時(shí)候,一般會用到ADO操作,而且在ADO記錄集查找記錄中,我們都會用到“find”方法。
這種方法只能查找出一列。往往不能滿足我們的要求。
下面的函數(shù), 直接調(diào)用:Multi_Find <ADO記錄集>, <查找條件>  即可進(jìn)行多列操作

'============================================================================
'
'-函數(shù)名稱:  Multi_Find
'
'-功能描述:  Find 方法是單列的操作,本函數(shù)支持多列查找。
'
'-輸入?yún)?shù):  objAdoRst ........... 必選,ADO記錄集
'             strCriteria ......... 必選,文本,查找條件
'
'-輸 出 值:  ADO記錄集(objAdoRst)的記錄指針
'
'-示    例:  Multi_Find rst, "國家= '中國' AND 城市 = '深圳'"
'             If  Not rst.EOF() Then
'                 MsgBox "找到指定條件的記錄。"
'             Else
'                 MsgBox "指定條件的記錄不存在。"
'             End If
'
'-作    者:  魚兒游游
'-創(chuàng)建日期:  2012-12-17
'-聯(lián)系方式:  my_mail@163.com   QQ:7178000
'============================================================================
Public Sub Multi_Find(ByRef objAdoRst As Object, ByVal strCriteria As String)
    Dim rstClone As Object
    
    '生成ADO記錄集變量
    Set rstClone = CreateObject("ADODB.Recordset")
    
    '復(fù)制指定的記錄集
    Set rstClone = objAdoRst.Clone
    
    '對ADO記錄集按指定條件進(jìn)行篩選
    rstClone.Filter = strCriteria
    
    '判斷篩選結(jié)果
    If rstClone.EOF Or rstClone.BOF Then
        '沒有找到相應(yīng)記錄,記錄指針移到文件結(jié)束處
        objAdoRst.MoveLast
        objAdoRst.MoveNext
    Else
        '找到相應(yīng)記錄,把指定記錄的記錄指針移到相同的位置(復(fù)制的記錄集)
        objAdoRst.Bookmark = rstClone.Bookmark
    End If
    
    '釋放對象變量內(nèi)存
    rstClone.Close
    Set rstClone = Nothing
    
End Sub

(責(zé)任編輯:admin)

頂一下
(3)
100%
踩一下
(0)
0%
發(fā)表評論
請自覺遵守互聯(lián)網(wǎng)相關(guān)的政策法規(guī),嚴(yán)禁發(fā)布色情、暴力、反動(dòng)的言論。
評價(jià):