📄 ado的find方法如何查找同时满足两个条件的记录.txt
字号:
ADO 1.x/2.0的 Find方 法 是 不 支 持 AND、 OR这 样 的 逻 辑 操 作 符 。 如 果 直 接 使 用 rs.Find "姓 名 ='abc' AND城 市 ='def'"会 产 生 3001号 错 误 。
你 可 以 用 Clone建 立 一 个 Recordset对 象 , 然 后 利 用 Filter属 性 。 下 面 是 一 个 例 子
Public Sub Multi_Find( _
ByRef oRs As ADODB.Recordset, _
sCriteria As String)
Dim clone_rs As ADODB.Recordset
Set clone_rs = oRs.Clone
clone_rs.Filter = sCriteria
If clone_rs.EOF Or clone_rs.BOF Then
oRs.MoveLast
oRs.MoveNext
Else
oRs.Bookmark = clone_rs.Bookmark
End If
clone_rs.Close
Set clone_rs = Nothing
End Sub
调 用 方 法 为
Multi_Find rs, "姓 名 ='abc' AND 城 市 ='def'"
至 于 如 果 等 号 右 端 是 变 量 应 该 如 何 写 , 可 以 这 样 :
Multi_Find rs, "姓 名 ='" +sName +"' AND 城 市 ='" +sCity +"'"
<END>
有 时 觉 得 ADO还 不 如 DAO...,要 用 ADO的 话 , 用 SELECT 代 替 FIND 吧 , 挺 方 便 的 。
<END>
据 我 的 经 验 ,不 如 使 用 Filter,速 度 还 可 以 。
<END>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -