VB中数据库记录指针的概念与应用.docxVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
VB中数据库记录指针的概念与应用

VB中数据库记录指针的概念与应用在数据库知识里,有一个很重要的概念,那就是记录指针。对数据表的记录进行操作,通常有四种即:显示(读取)记录、更新(修改)字段、添加记录和删除记录。在进行这些操作时,往往需要用户知道目前记录指针是指向哪一条记录,比如:对某一条特定记录进行某字段的修改等。所以在数据库应用中,记录指针是一个重要的概念。在数据库知识里,我们把记录指针指向的那条记录,叫当前记录。本文以VB6环境下,以使用ADODB.Recordset对象为例,来介绍记录指针和当前记录的概念。我们都知道,使用ADODB.Recordset对象,进行记录字段的修改,例如:Rst.Fields(姓名)=王老大Rst.Fields(性别)=男Rst.Fields(学号)=101Rst.Updata这样就可以把此时记录指针指着的记录(叫做当前记录)的这三个字段,修改更新为上面新的数据了。那么这里需要用户知道,用什么命令把记录指针移动到指向你要操作的记录上。使用ADODB.Recordset对象移动记录指针的语句有四个。Rst.MoveFirst ---- 记录指针移动到第1条记录Rst.MoveNext ---- 记录指针移动到下一条记录Rst.MoveLast ---- 记录指针移动到最后1条记录Rst.MovePrevious ---- 记录指针移动到上一条记录问题:数据表里的记录是有限的,如果我们不断地使用Rst.MoveFirst,那么记录指针终究会移动到数据表的底部,并且可能从底部移动到表的外面。如果我们无意中将记录指针从底部移动到表的外面,然后执行:Rst.Fields(姓名)=王老大Rst.Fields(性别)=男Rst.Fields(学号)=101Rst.Updata显然系统会提示错误信息。那么如何来避免这种错误操作的发生呢?这就是本文的主要目的。ADODB.Recordset对象有两个属性:Eof和Bof分别来表示记录指针的情况。下面用示意图加上适当的文字来说明记录指针和当前记录的概念的重要性;回顾语句:Rst.Open Select * From 数据表, Conn, adOpenKeyset, adLockPessimisticIf Not (Rst.EOF And Rst.BOF) Then Rst.MoveFirstEnd If执行上述语句后,情况1:指针见下图:ID 姓名 语文 数学101张大8890201李二8792301黄三8998假设我们要想显示当前记录的姓名,语文,数学msgbox rst.Fields(姓名”)‘显示 张大msgbox rst.Fields(语文”)‘显示 88msgbox rst.Fields(数学”)‘显示 90此时,rst对象的两个属性值rst.Eof 为Falserst.Bof 为False情况2:继续执行rst.MoveNext指针见下图: ID 姓名 语文 数学101张大8890201李二8792301黄三8998显示当前记录的姓名,语文,数学msgbox rst.Fields(姓名”)‘显示 李二msgbox rst.Fields(语文”)‘显示 87msgbox rst.Fields(数学”)‘显示 92此时,rst对象的两个属性值rst.Eof 为Falserst.Bof 为False情况3:继续执行rst.MoveNext指针见下图: ID 姓名 语文 数学101张大8890201李二8792301黄三8998显示当前记录的姓名,语文,数学msgbox rst.Fields(姓名”)‘显示 黄三msgbox rst.Fields(语文”)‘显示 89msgbox rst.Fields(数学”)‘显示 98此时,rst对象的两个属性值rst.Eof 为Falserst.Bof 为False归纳上面三种情况得到结论:只要记录指针是指向数据表中的任何一条记录的,那么ADODB.Recordset对象的Eof属性和Bof属性,都为False。情况4:继续执行rst.MoveNext指针见下图: ID 姓名 语文 数学101张大8890201李二8792301黄三8998此时,rst对象的两个属性值rst.Eof 为True ---- 注意:这表示记录指针是从数据表的底部向外移动到表外去的rst.Bof 为False此时,访问不到任何记录数据。如果此时,用语句:msgbox rst.Fields(姓名”)将

文档评论(0)

qiwqpu54 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档