关于dlookup

leohxj 2010-05-25 08:54:53
strPass = DLookup("密码", "用户密码表", "[密码]" = "" & Me.Txt密码 & "")
If Not (strPass) Then
DoCmd.Close acForm, "主切换面板"
DoCmd.Close acForm, "登陆背景", acSaveYes
DoCmd.OpenForm "切换面板", acNormal
Else
msg = MsgBox("密码错误!请重新输入正确的密码", 16, "警告")
Me.Txt密码.SetFocus
Me.Txt密码 = Null
为什么密码正确的时候也是警告,"密码错误!请重新输入正确的密码"
是不是DLOOKUP的问题?石头人 strPass无类型。
...全文
220 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
wwwwb 2010-05-27
  • 打赏
  • 举报
回复
[Quote=引用 8 楼 leohxj 的回复:]
引用 7 楼 wwwwb 的回复:

为什么是[用户ID]不是[用户名]?
因为你的Me.Combo用户名 绑定列修改为1,即ID,这样才有结果,
OR
Me.Combo用户名 绑定列修改为2,就可以查询 用户名了

我后面做个那个判断用户名怎么写?
[/Quote]

已经说过
Me.Combo用户名 绑定列修改为2,就可以查询 用户名了
你的代码就可以了
leohxj 2010-05-26
  • 打赏
  • 举报
回复
up....
leohxj 2010-05-26
  • 打赏
  • 举报
回复
[Quote=引用 7 楼 wwwwb 的回复:]

为什么是[用户ID]不是[用户名]?
因为你的Me.Combo用户名 绑定列修改为1,即ID,这样才有结果,
OR
Me.Combo用户名 绑定列修改为2,就可以查询 用户名了
[/Quote]
我后面做个那个判断用户名怎么写?
wwwwb 2010-05-26
  • 打赏
  • 举报
回复
为什么是[用户ID]不是[用户名]?
因为你的Me.Combo用户名 绑定列修改为1,即ID,这样才有结果,
OR
Me.Combo用户名 绑定列修改为2,就可以查询 用户名了
leohxj 2010-05-26
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 wwwwb 的回复:]

or
If Nz([Txt密码]) = Nz(DLookup("[密码]", "用户密码表", "[用户ID]=" & Me.Combo用户名.Value)) Then
[/Quote]
为什么是[用户ID]不是[用户名]?
我想再判断下用户名,根据不同的用户名转换到不同的切换面板,
代码如下:
If Nz([Txt密码]) = Nz(DLookup("[密码]", "用户密码表", "[用户ID]=" & Me.Combo用户名.Value)) Then
If Nz([Combo用户名]) = "teacher" Then
DoCmd.Close acForm, " 主切换面板"
DoCmd.Close acForm, "登陆背景", acSaveYes
DoCmd.OpenForm "教师切换面板", acNormal
Else
DoCmd.Close acForm, "主切换面板"
DoCmd.Close acForm, "登陆背景", acSaveYes
DoCmd.OpenForm "学生切换面板", acNormal
End If
Else
msg = MsgBox("密码错误!请重新输入正确的密码", 16, "警告")
Me.Txt密码.SetFocus
Me.Txt密码 = Null

但是每次都跳转到学生切换面版。
wwwwb 2010-05-26
  • 打赏
  • 举报
回复
or
If Nz([Txt密码]) = Nz(DLookup("[密码]", "用户密码表", "[用户ID]=" & Me.Combo用户名.Value)) Then
wwwwb 2010-05-26
  • 打赏
  • 举报
回复
将Me.Combo用户名 绑定列修改为2
leohxj 2010-05-26
  • 打赏
  • 举报
回复
不能沉啊。。还没解决呢。。
leohxj 2010-05-25
  • 打赏
  • 举报
回复
上传了。。。
ACMAIN_CHM 2010-05-25
  • 打赏
  • 举报
回复
上传你的测试用MDB文件,否则别人只能

可以上传到 http://www.access911.net/csdn


QQ群 48866293 OFFICE应用挖掘
MS OFFICE(ACCESS\EXCE\WORD等应用技术探讨与交流!技术群,请阅群论坛中的《踢人规则》
leohxj 2010-05-25
  • 打赏
  • 举报
回复
strPass = DLookup("密码", "用户密码表", "[密码]='" & Txt密码 & "'")
是表达式引号的问题。
但是密码为字母的时候,出现类型不匹配。
密码为数字时候,可以登录。
这是为什么呢

7,714

社区成员

发帖
与我相关
我的任务
社区描述
Microsoft Office Access是由微软发布的关系数据库管理系统。它结合了 MicrosoftJet Database Engine 和 图形用户界面两项特点。
社区管理员
  • Access
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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