我是个新手,做个学生信息管理系统,寻求原理和解决方法。其中有删除记录的功能相关代码:
If MsgBox("真的要删除记录?", vbQuestion + vbYesNo, "提示信息") = vbYes Then
Rct1.Delete 1
Rct1.MovePrevious
txtSerial.Text = Rct1.Fields("serial")
txtname.Text = Rct1.Fields("name")
cboCla.Text = Rct1.Fields("class")
txtBri.Text = Rct1.Fields("birthday")
End if
‘Rct1为当前记录集,
当前记录能成功删除,但执行完"Rct1.MovePrevious"后,就出现错误实时错误"3021"内容为:BOF或者EOF中的一个是真,当前记录可能被删除,所需的操作需要一个记录。
个人认为:是不是记录指针移动到最前条记录,不能读取其中的数据?
If MsgBox("真的要删除记录?", vbQuestion + vbYesNo, "提示信息") = vbYes Then
Rct1.Delete 1
Rct1.MovePrevious
txtSerial.Text = Rct1.Fields("serial")
txtname.Text = Rct1.Fields("name")
cboCla.Text = Rct1.Fields("class")
txtBri.Text = Rct1.Fields("birthday")
End if
‘Rct1为当前记录集,
当前记录能成功删除,但执行完"Rct1.MovePrevious"后,就出现错误实时错误"3021"内容为:BOF或者EOF中的一个是真,当前记录可能被删除,所需的操作需要一个记录。
个人认为:是不是记录指针移动到最前条记录,不能读取其中的数据?
If MsgBox("真的要删除记录?", vbQuestion + vbYesNo, "提示信息") = vbYes Then
Rct1.Delete 1
Rct1.MovePrevious
txtSerial.Text = Rct1.Fields("serial")
txtname.Text = Rct1.Fields("name")
cboCla.Text = Rct1.Fields("class")
txtBri.Text = Rct1.Fields("birthday")
End if
‘Rct1为当前记录集,
当前记录能成功删除,但执行完"Rct1.MovePrevious"后,就出现错误实时错误"3021"内容为:BOF或者EOF中的一个是真,当前记录可能被删除,所需的操作需要一个记录。
补充:上面代码想实现的功能为删除上一条记录后接着显示下一条的内容(Rct1.MovePrevious 改为Rct1.Movenext)
If MsgBox("真的要删除记录?", vbQuestion + vbYesNo,"提示信息")= vbYes Then
Rct1.Delete 1
if not rs.eof then
Rct1.MoveNext
txtSerial.Text = Rct1.Fields("serial")
txtname.Text = Rct1.Fields("name")
cboCla.Text = Rct1.Fields("class")
txtBri.Text = Rct1.Fields("birthday")
end if
End if
记录也删除,指针也到了下一条或者第一条,但就不能用文本框txtSerial.Text,txtname.Text ...显示出来
或者删除的是最后一条数据 movenext之后也不存在记录 当然不能显示了