如何在recordset里按指定条件定位纪录??find方法怎么用?

kink 2004-06-15 08:24:42
如何在recordset里按指定条件定位纪录??find方法怎么用?
dim id as integer
dim rs as new adodb.recordset
....
....
id=10
rs.find "id="&id

...

可是找不到
...全文
242 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
zxj911 2004-06-16
  • 打赏
  • 举报
回复
楼上做的是什么啊?
看不太明白

啊维 2004-06-16
  • 打赏
  • 举报
回复
用SQL语句进行查询..................
查询语句:
mRst.Open "SELECT * FROM tOutput1" & mGetWhere, mConnectString, adOpenKeyset, adLockPessimistic, adCmdText
查询条件函数:
Private Function mGetWhere() As String
Dim mStr As String
If Chk = 1 Then
mStr = "日期>= '" & Format(dtpday.Value, "yyyy-mm-dd") & "' and 日期<= '" & Format(dtpday1.Value, "yyyy-mm-dd") & "'"
End If
'按单号查询
If TextDH.Text <> "" Then
If mStr = "" Then
mStr = "单号 LIKE '" & "%" & TextDH.Text & "%'"
Else
mStr = mStr & " AND 单号 LIKE '" & "%" & TextDH.Text & "%'"
End If
End If
'按供应商查询
If IcbGhdw.Text <> "" Then
If mStr = "" Then
mStr = "外部购货单位 LIKE '" & "%" & IcbGhdw.Text & "%'"
Else
mStr = mStr & " AND 外部购货单位 LIKE '" & "%" & IcbGhdw.Text & "%'"
End If
End If
If Text1.Text <> "" Then
If mStr = "" Then
mStr = "合同号 LIKE'" & "%" & Text1.Text & "%'"
Else
mStr = mStr & "AND 合同号 LIKE '" & "%" & Text1.Text & "%'"
End If
End If
If IcbQf.Text <> "" Then
If mStr = "" Then
mStr = "内部购货单位 LIKE'" & "%" & IcbQf.Text & "%'"
Else
mStr = mStr & "AND 内部购货单位 LIKE'" & "%" & IcbQf.Text & "%'"
End If
End If
If icbCK.Text <> "" Then
If mStr = "" Then
mStr = "出库车间 LIKE'" & "%" & icbCK.Text & "%'"
Else
mStr = mStr & "AND 出库车间 LIKE'" & "%" & icbCK.Text & "%'"
End If
End If
mGetWhere = IIf(Trim(mStr) = "", "", " WHERE " & mStr)
End Function
haipingma 2004-06-16
  • 打赏
  • 举报
回复
dim id as integer
dim rs as new adodb.recordset
....
....
id=10
if rs.recordcount>0 then
rs.movefirst
rs.find "id="&id
if rs.eof then msgbox "沒有找到符合條件的記錄"
else
msgbox "沒有記錄可查找"
end if
yoki 2004-06-15
  • 打赏
  • 举报
回复
想这种情况建议用Filter
online 2004-06-15
  • 打赏
  • 举报
回复
看看,不知你的具体代码
Private Sub Command2_Click()
Dim id As Integer
Dim rs1 As New adodb.Recordset
rs1.Open "select * from orders", conn, adOpenDynamic, adLockPessimistic
id = 3
rs1.Find "订单号=" & id
MsgBox rs1.Fields("供应商")
End Sub
WangPengAn 2004-06-15
  • 打赏
  • 举报
回复
用Filter 试一下
rs.Filter="id=" & id
射天狼 2004-06-15
  • 打赏
  • 举报
回复
不推荐用ADO提供的方法,效率不是很高,建议直接使用SQL语句进行查询,因为其内部也是根据条件转换成SQL语句再执行的.

1,217

社区成员

发帖
与我相关
我的任务
社区描述
VB 数据库(包含打印,安装,报表)
社区管理员
  • 数据库(包含打印,安装,报表)社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧