Access快速开发基础教程
网站公告
·Access专家课堂QQ群号:151711184    ·Access快速开发平台下载地址及教程    ·欢迎加入Access专家课堂微信群!    ·如何快速搜索本站文章|示例|资料    
您的位置: 首页 > 技术文章 > Access数据库-查询/SQL语句

DLOOKUP的详细用法说明

时 间:2022-07-01 10:37:35
作 者:张旭军   ID:72228  城市:杭州
摘 要:小白白来讲Dlookup
正 文:

更多专业说明

郑家龙著DLookup用法示例 http://www.accessoft.com/article-show.asp?id=662   

DLookup是Access数据库的必知必会知识.

以下是本人对DLookup的重新理解,重点讲最常见的文本格式的用法

层次不够深,希望对初学者的理解有所帮助.

================常见不理解的知识=======================

字段名称有[XXX]   和me.XXX   表达为字段时,完全不同的事物
[XXX]表示表中的字段      me.XXX表示为本窗体的字段

看不到[]的字段,系统默认是本窗体的字段.

啰嗦一下,初学ACCESS的朋友   查询或者表或者窗体  无论是中文的还是英文的

一定要加前缀   什么前缀都可以  目的是你一看标记就知道是表或者查询或者窗体

否则在从DLookup开始时   自己把自己搞蒙圈.    

从此也可以理解前辈们喜欢在查询,报表,窗体,表前面为什么都做标准的字符记号.

Dlookup的工作原理  在一个查询或者表里以目标字段为线   把某个需要的字段内容显示出来  

唯一条件是XXX        难点是这个条件怎么表达.

==================================================

看看常用的几种形式    注意值要用单引号,  否则报错

1>最简单的形式,       一看就懂,上场就废   注意值要用单引号

=DLookUp("外语成绩","tblstudent","姓名='小红'")     

DLookUp  查找本窗体的字段"外语成绩",位置在表"tblstudent"中,条件是表中的字段名称"姓名='小红'") 

"姓名='小红'"     是条件,没有这个限制条件会产生很多值    一般这个条件都是唯一值 例如ID

单引号之间的内容   为的内容 

二头的双引号   表示这个引起来的内容一个完整的表达方式

此使用场景,太固定,只有固定值场景才有使用,所以定级别是入门要求用法.

用于数值型条件值:
DLookup("字段名称" , "表或查询名称" , "条件字段名 = n")

用于字符串型条件值:(注意字符串的单引号不能丢失)
DLookup("字段名称" , "表或查询名称" , "条件字段名 = '字符串值'")

用于日期型条件值:(注意日期的#号不能丢失)
DLookup("字段名称" , "表或查询名称" , "条件字段名 = #日期值#")


2>最常用的正常形式,      不会用,还是入门水平    注意值要用单引号

 Me.产品规格 = DLookup("组织规格", "SZ织造工艺", "[指定缸号] ='" & Me.指定缸号 & "'")

 "[指定缸号]                                                     查询的字段名称

'" & Me.指定缸号 & "'                                        值的形式       

"[指定缸号] ='" & Me.指定缸号 & "'"                   是限制的条件,没有这个条件会产生很多的值,一般这个条件都是唯一值 例如ID

单引号之间的内容   就是的内容 

二头的双引号   表示这个引起来的内容一个完整的表达方式

本窗体的字段[产品规格]  去表名称["SZ织造工艺"]中查找组织规格,条件是 表["SZ织造工艺"]的字段[指定缸号] 等于窗体的字段 为'" & Me.指定缸号 & "'")

注意:SZ织造工艺的字段[指定缸号]的值,等于本窗体   指定缸号   的值

不是本窗体的字段要加[]  ,否则系统默认的是本窗体的字体名称

此使用场景较多,使用了字段的变量,展现更灵活   正常ACCESS入门级水平的标志




3>比较复杂的形式    看懂就能自由发挥  ,进阶初级水平

以下例子:        唯一值不是真正的唯一值  需要附加条件才是唯一值时用法

完全理解Dlookup的含义 不难实现精确定向查找

 Me.产品规格 = DLookup("组织规格", "SZ织造工艺", "[指定缸号]&[缸号识别] ='" & Me.指定缸号 & "'&'" & Me.缸号识别 & "'")

"[指定缸号]&[缸号识别]                                      查询的字段名    为一个联合的整体

'" & Me.指定缸号 & "'&'" & Me.缸号识别 & "'         值形式           为一个联合的整体  

                                                                        注意:若干不同字段名称前都要英文单引号

'" & Me.指定缸号 & "'&'" & Me.缸号识别 & "'"   

         是限制的条件,没有这个条件会产生很多的值,一般这个条件都是唯一值 例如ID 

         这里联合条件,是在特定的情况不是唯一值,联合字段产生新的唯一值手段. 

        看清楚前部分是紫色   看清楚后半部分是红色    格式一模一样   中间用&连接

单引号之间的内容   就是的内容 

二头的双引号   表示这个引起来的内容一个完整的表达方式

注意:表SZ织造工艺的字段[指定缸号]&[缸号识别]的值,等于本窗体   指定缸号& 缸号识别   的值

不是本窗体的字段要加[],否则系统默认的是本窗体的字体名称



此使用场景更强更灵便,使用了联合字段的联合变量,展现更加灵活

相当于增加条件显示需要展现的值


 Me.品种名称 = DLookup("品种名称", "SZ织造工艺", "[指定缸号]&[缸号识别] ='" & Me.指定缸号 & "'&'" & Me.缸号识别 & "'")
 Me.织布厂 = DLookup("织布厂", "SZ织造工艺", "[指定缸号]&[缸号识别] ='" & Me.指定缸号 & "'&'" & Me.缸号识别 & "'")

如果表达不恰当的地方,敬请谅解.

希望对初学者快速运用Dlookup有帮助




Access软件网QQ交流群 (群号:115180141)       Access源码网店

常见问答:

技术分类:

相关资源:

专栏作家

关于我们 | 服务条款 | 在线投稿 | 友情链接 | 网站统计 | 网站帮助