vb中.EOF和.BOF是什么意思
发布网友
发布时间:2022-04-26 09:32
我来回答
共4个回答
热心网友
时间:2022-04-12 17:15
BOF 指示当前记录位置位于 Recordset 对象的第一个记录之前。
EOF 指示当前记录位置位于 Recordset 对象的最后一个记录之后。
返回值
BOF 和 EOF 属性返回布尔型值。
说明
使用 BOF 和 EOF 属性可确定 Recordset 对象是否包含记录,或者从一个记录移动到另一个记录时是否超出 Recordset 对象的*。
如果当前记录位于第一个记录之前,BOF 属性将返回 True (-1),如果当前记录为第一个记录或位于其后则将返回 False (0)。
如果当前记录位于 Recordset 对象的最后一个记录之后 EOF 属性将返回 True,而当前记录为 Recordset 对象的最后一个记录或位于其前,则将返回 False。
如果 BOF 或 EOF 属性为 True,则没有当前记录。
如果打开没有记录的 Recordset 对象,BOF 和 EOF 属性将设置为 True,而 Recordset 对象的 RecordCount 属性设置为零。打开至少包含一条记录的 Recordset 对象时,第一条记录为当前记录,而 BOF 和 EOF 属性为 False。
如果删除 Recordset 对象中保留的最后记录,BOF 和 EOF 属性将保持 False,直到重新安排当前记录。
参考资料:http://ce.sysu.e.cn/garden/dispbbs.asp?BoardID=24&replyID=17293&id=8103&skin=0
热心网友
时间:2022-04-12 18:33
BOF:指当前记录位置位于
Recordset对象
的第一个记录之前;
EOF:指当前记录位置位于Recordset对象的最后一个记录之后。
这两个的属性值均返回
布尔型
:True和False,使用BOF和
EOF
属性可确定
Recordset
对象是否包含记录,或者从一个记录移动到另一个记录时是否超出
Recordset
对象的*。
下表即是各自的使用说明及查询结果:
说明:
(1)如果当前记录位于第一个记录之前,BOF
属性将返回
True(-1),如果当前记录为第一个记录或位于其后则将返回
False
(0)。
(2)如果当前记录位于
Recordset
对象的最后一个记录之后
EOF
属性将返回True,而当前记录为
Recordset
对象的最后一个记录或位于其前,则将返回
False。
(3)如果
BOF
或
EOF
属性为
True,则没有当前记录。
(4)如果打开没有记录的
Recordset
对象,BOF
和
EOF
属性将设置为True,而
Recordset
对象的
RecordCount
属性设置为零。打开至少包含一条记录的
Recordset
对象时,第一条记录为当前记录,而BOF
和
EOF
属性为
False。
(5)如果删除
Recordset
对象中保留的最后记录,BOF
和
EOF属性将保持
False,直到重新安排当前记录。
具体用法:
If
objRs.BOF
Then
表示:当前指针的位置是在第一行记录之前,则...
If
objRs.EOF
Then
表示:当前指针的位置是在最后一行记录之后,则...
If
Not
objRs.EOF
Then
表示:当前指针的位置没有到达最后一条记录
If
Not
objRs.BOF
then
表示:当前指针的位置没有到达第一条记录
推荐使用下面两条
If
Not
(objRs.BOF
AND
objRs.EOF)
Then
表示:指针位于RecordSet
的当中(并非是最后一条和第一条)
,说明一定有记录。
If
objRs.BOF
AND
objRs.EOF
Then
表示:没有任何记录
热心网友
时间:2022-04-12 20:08
这个用法只是用来判断sql语句中指定的记录是否不存在
给你一个ASP的例子(ASP的脚本语言是VBScript,和VB类似)
set
rs
=
create.object("adodb.recordset")
rs.open
"select
*
from
数据表
order
by
id
desc"
if
rs.bof
and
rs.eof
then
response.write
"数据库中暂无记录"
else
'在这里输出需要的内容
end
if
热心网友
时间:2022-04-12 21:59
EOF:end
of
file,用VB打开的文件可以判断是否读到结尾