学习学生信息管理系统的时候,对于信息的修改很多时候都用到了 书签的功能(mybookmark)。对删除记录显示记录起到了承上启下的巨大作用。同时也因为书签的的使用,是我们的程序更为简单,刚开始不知道这个书签有什么用处,因为就是简单的定位标标志,也没有很重视,知道师傅验收的时候,问我的时候,我才想起还有这么一条语句在默默的给我帮助,于是师傅让我自己查资料,然后下一篇博客,这也就是是这篇博客的由来。
书签顾名思义就是做标记,让我们更好的控制使用数据表,通过书签我们可以随意的跳到我们想要看的记录下(前提是你的给你的目的记录标记书签),此外书签还有可以判断当前游标下是不是空记录(对于空记录 mybookmark 将返回 0)
下面通过举例学生信息管理系统中删除记录来,说明书签的用处:
if mrc.eof and mrc.bof = true then
msgBox("没有记录")
unload me
exit sub
end if
<span style="color:#343434;">Private sub deletecommand_click() </span><span style="color:#33ff33;"> if mrc.eof and mrc.bof then msgBox "没有记录" exit sub end if</span><span style="color:#343434;"> Mybook=mrc.bookmark '对当前记录做标签 str=msgBox"是否确定删除当前记录",vbokcancel,"提示" If str=vbokthen Mrc.movenext If mrc.eof then '要删除的记录肯定是左后一个(是不是第一个还不确定) Mrc.movefirst Mybookmark=mrc.bookmark '对第一条做标签 Mrc.movelast Mrc.delete Mrc.bookmark=mybookmark '让记录显示回到先前定义书签的位置 </span><span style="color:#ff0000;">If mybookmark=0 then '你将标签给第一条记录,但是第一条记录是空(要删 除的记录肯定是一个唯一的记录) MsgBox"您将删除最后一条记录","提示" Exit sub End if </span><span style="color:#343434;"> Call viewData Else ' 要删除的记录不是最后一条 Mybookmark=mrc.bookmark '给mrc.movenext 做标签 Mrc.moveprevIoUs '回到要删除的记录 Mrc.delete Mrc.bookmark=mybookmark '让记录显示回到先前定义书签的位置 Call viewData End if Else '取消删除记录 Mrcbookmark=mybookmark '让记录显示刚开始定义的书签位置 Call viewData end if End sub Private sub deletecommand_click() Mybook=mrc.bookmark '对当前记录做标签 str=msgBox"是否确定删除当前记录","提示" If str=vbokthen Mrc.movenext If mrc.eof then '要删除的记录肯定是左后一个(是不是第一个还不确定) Mrc.movefirst Mybookmark=mrc.bookmark '对第一条做标签 Mrc.movelast Mrc.delete Mrc.bookmark=mybookmark '让记录显示回到先前定义书签的位置 If mybookmark=0 then '你将标签给第一条记录,但是第一条记录是空(要删 除的记录肯定是一个唯一的记录) MsgBox"您将删除最后一条记录","提示" Exit sub End if Call viewData Else ' 要删除的记录不是最后一条 Mybookmark=mrc.bookmark '给mrc.movenext 做标签 Mrc.moveprevIoUs '回到要删除的记录 Mrc.delete Mrc.bookmark=mybookmark '让记录显示回到先前定义书签的位置 Call viewData End if Else '取消删除记录 Mrcbookmark=mybookmark '让记录显示刚开始定义的书签位置 Call viewData end if End sub</span>
绿色字体部分是防止当没有记录是,点击删除按钮出错,红色字体部分是防止删除最后一条记录是出现错误。
当我们在查看记录的时候在没有定义书签的情况下游标指向的位置就是书签位置。
这就是我对书签的了解,有不对的地方希望帮忙指正。