bof或eof中有一个是“真”,或者当前的记录以被删除,所需的操作要求一个当前的记录

bangbangwo 2005-05-20 10:15:44
我的修改密码程序运行时出现:bof或eof中有一个是“真”,或者当前的记录以被删除,所需的操作要求一个当前的记录。请问这是怎么回事?
点击调试:
Private Sub cmdOK_Click()
Dim txtSQL, MsgText As String
Dim mrc As ADODB.Recordset
If Trim(Text1(1).Text) <> Trim(Text1(2).Text) Then
MsgBox "密码输入不正确!", vbOKOnly + vbExclamation, "警告"
Text1(1).SetFocus
Text1(1).Text = ""
Else
txtSQL = "select * from user_Info where user_ID = '" & UserName & "'"
Set mrc = ExecuteSQL(txtSQL, MsgText)
显示此行错误 “ mrc.Fields(1) = Text1(1).Text”
mrc.Update
mrc.Close
MsgBox "密码修改成功!", vbOKOnly + vbExclamation, "修改密码"
Me.Hide
End If
End Sub
注:数据库连接正确,user_Info 表中包含user_ID和user_PWD,而且user_PWD在第二列。
请帮我改改。
...全文
579 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
dqhuaying 2005-05-24
  • 打赏
  • 举报
回复
呵呵,说明你取的记录还是空啊,设断点调试看看
bangbangwo 2005-05-24
  • 打赏
  • 举报
回复
我的数据库表不是空的,程序连接也没问题,可就是修改密码窗体有问题。我将该窗体连接到别的数据库表运行就没问题,请问这是为什么?
bangbangwo 2005-05-23
  • 打赏
  • 举报
回复
重写还是不行,是不是数据库中的表定义有问题?第一位是用户名,第二位是密码。我认为没有错,可就是运行显示:bof或eof中有一个是“真”,或者当前的记录以被删除,所需的操作要求一个当前的记录 。请各位再帮我看看
bangbangwo 2005-05-20
  • 打赏
  • 举报
回复
我在登录窗体中定义的用户名就是& UserName &
bangbangwo 2005-05-20
  • 打赏
  • 举报
回复
我运行的修改程序是在登录到系统后进行的。
txtSQL = "select * from user_Info where user_ID = '" & UserName & "'"中的 UserName 是登录的用户名,请问是不是这出错了?我该怎么改
舍南舍北 2005-05-20
  • 打赏
  • 举报
回复

txtSQL = "select * from user_Info where user_ID = '" & UserName & "'"
Set mrc = ExecuteSQL(txtSQL, MsgText)
if mrc.eof then
msgbox "输入的用户不存在!",48,"提示"
else
txtSQL = "update user_Info set user_pwd='" & Text1(1).Text” & "' where user_ID = '" & UserName & "'"
Set mrc = ExecuteSQL(txtSQL, MsgText)
end if
lishimin00 2005-05-20
  • 打赏
  • 举报
回复
用一下去空格函数吧
我想你没查到值应该是有空格了
要不你舍断点调一下
饮水需思源 2005-05-20
  • 打赏
  • 举报
回复
txtSQL = "select * from user_Info where user_ID = '" & UserName & "'"
Set mrc = ExecuteSQL(txtSQL, MsgText)
if mrc.recordcount=0 then '<---加入此句,判断是否有查询记录集返回
msgbox "输入的用户不存在!",48,"提示"
else
mrc.Fields(1) = Text1(1).Text
...
end if
viena 2005-05-20
  • 打赏
  • 举报
回复
而且妳用Execute方式打开的记录集是只读的,不能修改
viena 2005-05-20
  • 打赏
  • 举报
回复
用所给的查询条件没找到记录,返回记录集为空
simonlee2003 2005-05-20
  • 打赏
  • 举报
回复
txtSQL = "select * from user_Info where user_ID = '" & trim(UserName) & "'"

还不行重新写一次 可能那个位置多了一个空格

1,216

社区成员

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

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