首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >SqlDataReader定位

SqlDataReader定位
EN

Stack Overflow用户
提问于 2014-08-20 15:08:37
回答 1查看 199关注 0票数 0

当代码到达循环时,读取器的位置是0还是1?它为什么会这样表现?

代码语言:javascript
复制
bool tag= sqlDataReader.Read();
if (tag)
{
while (sqlDataReader.Read())
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-08-20 15:18:44

DataReader中没有位置的概念。你总是处于第一位。它是只向前的。DataReader.Read读取下一条记录,如果读取一行返回True,如果没有读取行,则返回False。

因此,要回答您的问题,如果您的sqlDataReader有0行,tag将是假的。在这种情况下,它永远不会进入If块,因此永远不会到达While语句。如果它有一个或多个行,那么tag将是True,您的While循环将执行,直到从DataReader中读取所有行为止。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/25408296

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档