蓝森林首页 | 返回主页 | 本站地图 | 站内搜索 | 联系信箱 |
 您目前的位置:首页 > 自由软件 > 技术交流 > 应用编程


    

蓝森林 http://www.lslnet.com 2006年8月25日 8:28

[asp]eof是数据记录第一条的意思吗?

eof是数据记录第一条的意思吗?

请看这里
http://www.pf365.com/pf/Article_Print.asp?ArticleID=144

應該是最後一條之後

好像是最后一条吧!

bof 是第一条

eof 是最后一条

同上……汗。

[color=Red]e[/color]nd [color=Red]o[/color]f [color=Red]f[/color]ile => eof

bof是记录之前的闭合点
eof是记录之后的闭合点

bof  <-| 第一条 | ..... | 最后一条 | ->eof

是标志不是记录



去实际测试,就更清楚了:

                rs.open SQL,CONN,1,3

1.
如果无记录,rs.bof==true rs.eof==true 所以代码目的是只要判断有无记录则任意判断一个 bof 或 eof就可以了, 而大多数代码还是要判断 (rs.bof.eof and rs.eof) 或者  (rs.bof.eof or rs.eof)  此是多此一举

如果有记录,rs.bof==false rs.eof==false

                rs.movelast
                rs.movenext
移动到最后一条记录,再下移一次(移动到最后一条记录之后) 则 rs.bof==false, rs.eof==true

                rs.movefirst
                rs.MovePrevious
移动到第一条记录,再前移一次(移动到第一条记录之前) 则 rs.bof==true, rs.eof==false

---------------
2.
无记录: 则 bof eof全为 true
有记录: 只可能 bof 和 eof 都为 false 或其中一个 为 false 另一个为 true 不可能出现全为 true

--------------
3.
把 bof 和 eof想象为一条直线的两个端点处粘连上去的两个点
如果这条直线不存在(无记录),则这两个点重合在一起,注意!! 点是无大小的,点的体积是无穷小,所以这两个点合二为一,这时的数据库指针就在他们之上 则他们必须都为 true

反之,这条直线存在,则数据库指针对这两个基本点来说,要不就在直线上 bof eof就都为 false
要不就在任意一个点上 数据库指针只有一个,无分身术,所以只能其中一个为 true 另一个点必定为false

应该说的够透了

换个形象的想象,无记录是



这就是标准!!!!




Copyright © 1999-2000 LSLNET.COM. All rights reserved. 蓝森林网站 版权所有。 E-mail : webmaster@lslnet.com