设为首页收藏本站Access中国

Office中国论坛/Access中国论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

12下一页
返回列表 发新帖
查看: 3857|回复: 19
打印 上一主题 下一主题

[与其它组件] 请教关于access的查找功能

[复制链接]
跳转到指定楼层
1#
发表于 2005-7-30 17:51:00 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
在代码中判断表或者查询中某个值是否存在,俺现在掌握的只有2种方法,一是用DCOUNT()>=1,一是ISNULL(DLOOKUP()),但是两种的运算速度都感觉比较慢,还有没有其他的方法?例如在代码中使用SQL语句进行判断?或者更好,更快的办法?感觉上,系统自带的ctrl+F查找好像挺快的,不知道在代码中能借用这个查找功能的方法不?

[此贴子已经被作者于2005-7-30 10:11:45编辑过]

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享分享 分享淘帖 订阅订阅
2#
发表于 2005-7-30 18:33:00 | 只看该作者
用ADO打开查询,判断记录数
3#
 楼主| 发表于 2005-7-30 19:42:00 | 只看该作者
除此以外,还有其他方法不?
4#
发表于 2005-7-30 21:31:00 | 只看该作者
其他的方法肯定有,不过我不知道您要什么方法。因为我不能可能一一列举所有的方法
5#
 楼主| 发表于 2005-7-30 21:42:00 | 只看该作者
只要求速度快,因为数据量比较大
6#
发表于 2005-7-30 21:43:00 | 只看该作者
以下是引用海狸先生在2005-7-30 10:33:00的发言:

用ADO打开查询,判断记录数



这个不快吗?
7#
 楼主| 发表于 2005-7-30 22:25:00 | 只看该作者
还是感觉到有很明显的停顿
8#
发表于 2005-7-30 22:32:00 | 只看该作者
能写出来您用ADO的代码吗?
9#
 楼主| 发表于 2005-7-30 22:37:00 | 只看该作者
Private Sub UNITNAME_AfterUpdate()

Me.RATE = 1

        If Me.复选38 = False Then

'        Dim rst As DAO.Recordset

'        Set rst = CurrentDb.OpenRecordset("select goodsid from qgoodsunit where goodsid = " & Me.GOODSID)

'        If rst.EOF Then

        If IsNull(DLookup("[goodsid]", "qgoodsunit", "goodsid = " & Me.GOODSID)) Then

'        If DCount("[goodsid]", "qgoodsunit", "goodsid = " & Me.GOODSID) <= 0.99 Then

        Me.复选38 = True

        Me.Form.Repaint

        End If

        End If

End Sub

呵呵,我是用DAO的,ADO不太懂,或者您帮改成ADO的?
10#
发表于 2005-7-30 22:44:00 | 只看该作者
倒底你是用DAO还是用 dlookup,请写清楚一点
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|站长邮箱|小黑屋|手机版|Office中国/Access中国 ( 粤ICP备10043721号-1 )  

GMT+8, 2024-5-16 05:43 , Processed in 0.108811 second(s), 33 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表