探秘BOF 和EOF

简介: 信息管理系统做完了,这里总结一下不是很起眼但又起着重要作用的两个属性——BOF和EOF就是如此。

      信息管理系统做完了,这里总结一下不是很起眼但又起着重要作用的两个属性——BOF和EOF就是如此。

      BOF和EOF是Recordset(记录集)对象的一对返回值类型为布尔型的属性。

      BOF指向当前记录位置位于Recordset对象的第一个记录之前;EOF指向当前记录位置位于Rocordset对象的最后一个记录之后。注意:BOF并不是指当前记录位置位于Recordset对象的第一个记录,同样EOF并不是指当前记录位于Recordset对象的最后一个记录。

     下面这两段代码可以很好的说明:

正确的代码:

private sub nextCommand_Click()
      mrc.MoveNext     'mrc为一个记录集对象
      If mrc.EOF then
            mrc.MoveFirst
      End if
      Call viewData    'viewData为一个在窗体上显示当前记录的函数
End sub

错误的代码:      

private sub nextCommand_Click()
      If mrc.EOF then
           mrc.MoveFirst
      Else
           mrc.MoveNext     'mrc为一个记录集对象
      End if
      Call viewData    'viewData为一个在窗体上显示当前记录的函数
End sub

这段代码实现的功能是显示下一个记录,正确的做法是先让记录下移(无论当前记录是否为最后一个),其实可以把当前记录赋予一个指针,把数据库中的记录看作成内存地址,当下移后的指针指向最后一个地址块之后时(即下移后,记录如果指向最后一个记录之后),EOF的返回值为True。

20130805145709156.jpg

为了理解更明了一些,画了一张图(如右图)来解释EOF和BOF,假设记录集中一共有n条记录,当当前记录指针指向第一条记录之前时,BOF属性值为True;当前记录指向中间1~n任意一条记录时,BOF和EOF属性值

都为False;当前记录指向最后一条记录之后时,EOF

属性值为True。

   

      当然,EOF和BOF合起来也可以实现一些功能,比如:

      当判断语句BOF And EOF时,如果结果为True即它们倆的返回值都为True时则表明当前记录集中没有任何记录;而当记录中只有一个记录并处于该记录位置时,BOF和EOF的返回值都为False。

相关文章
|
架构师 测试技术 C语言
软件测试的优势和劣势
我们需要对软件测试有清晰的认识。那么作为软件测试,和软件开发相比,又有哪些优势呢?
854 0
|
存储 iOS开发 Windows
利用Dism修复系统步骤,以及dism找不到源文件解决方案
利用Dism修复系统步骤,以及dism找不到源文件解决方案
17007 0
利用Dism修复系统步骤,以及dism找不到源文件解决方案
|
10月前
|
安全 数据库 C#
阿里云最新域名注册和续费、云虚拟主机、企业邮箱收费价格表参考
域名,云虚拟主机,企业邮箱是阿里云旗下的基础产品,2025年截止目前阿里云平台注册.com域名的收费标准是85元,新用户首次注册可享受一定的优惠。本文为大家介绍2025年阿里云在域名注册与续费、云虚拟主机、以及企业邮箱方面的最新收费标准与优惠政策,帮助用户更好的了解自己所需产品的收费标准,以供参考。
|
PyTorch TensorFlow 算法框架/工具
Jetson环境安装(一):Ubuntu18.04安装pytorch、opencv、onnx、tensorflow、setuptools、pycuda....
本文提供了在Ubuntu 18.04操作系统的NVIDIA Jetson平台上安装深度学习和计算机视觉相关库的详细步骤,包括PyTorch、OpenCV、ONNX、TensorFlow等。
1484 1
Jetson环境安装(一):Ubuntu18.04安装pytorch、opencv、onnx、tensorflow、setuptools、pycuda....
|
API 数据安全/隐私保护
抖音视频,图集无水印直链解析免费API接口教程
该接口用于解析抖音视频和图集的无水印直链地址。请求地址为 `https://cn.apihz.cn/api/fun/douyin.php`,支持POST或GET请求。请求参数包括用户ID、用户KEY和视频或图集地址。返回参数包括状态码、信息提示、作者昵称、标题、视频地址、封面、图集和类型。示例请求和返回数据详见文档。
5035 1
|
安全 Java 数据安全/隐私保护
构建高效网站后台:权限管理系统设计与实现
【7月更文挑战第5天】在现代Web应用开发中,权限管理是后台系统不可或缺的一部分,它确保了系统的安全性与用户数据的隐私。良好的权限管理系统能够精细控制不同用户角色对功能模块及数据资源的访问权限,从而提升系统的灵活性和安全性。本文将深入探讨权限管理的基本概念、设计思路,并通过一个简单的代码示例展示如何在Web后台中实现基本的权限控制逻辑。
1005 2
|
机器学习/深度学习 PyTorch TensorFlow
Python实现深度学习学习率指数衰减的方法与参数介绍
学习率指数衰减提供了一种高效的动态调整学习率的手段,帮助模型在不同训练阶段以不同的学习速度优化,有利于提升模型性能和训练效率。通过合理设置衰减策略中的参数,可以有效地控制学习率的衰减过程,实现更加精确的模型训练调优。
848 0
|
设计模式 Java 数据库连接
|
消息中间件 负载均衡 Kafka
一文读懂Kafka API:Producer、Consumer和Streams全解析
大家好,今天我们将深入探讨Kafka的三大核心API。通过这篇文章,你将了解如何使用Producer API发布记录流,利用Consumer API订阅和处理数据,以及通过Streams API实现复杂的流处理。一起开启Kafka的探索之旅吧!
675 2
|
SQL 数据可视化 Oracle
这篇文章教会你:从 SQL Server 移植到 DM(上)
这篇文章教会你:从 SQL Server 移植到 DM(上)
910 8

热门文章

最新文章