Vb6 如何在If语句上使用(RecordSet).EOF?

Vb6 如何在If语句上使用(RecordSet).EOF?,vb6,vb6-migration,Vb6,Vb6 Migration,我有这些代码行,从vb6尝试将它们迁移到vb.net。 他们背后的逻辑是什么 RegFileHf.CommandText = "Select dayspassed from Config" Set UltHf = RegFileHf.Execute If Not UltHf.EOF Then someDate = Date - UltHf.Fields("dayspassed") Else someDate = Date - 180 End If If语句执行

我有这些代码行,从vb6尝试将它们迁移到vb.net。 他们背后的逻辑是什么

RegFileHf.CommandText = "Select dayspassed from Config"
  Set UltHf = RegFileHf.Execute
  If Not UltHf.EOF Then
    someDate  = Date - UltHf.Fields("dayspassed")
  Else
    someDate = Date - 180
  End If
If语句执行多次直到文件结束吗? else部分是否仅在我的SQL查询中没有行时才出现

你们能推荐一些好书来学习VB.NET吗?这样我就不用再问新手问题了


提前感谢。

EOF条件意味着您将获得数据的末尾。。那就意味着没有回程

因此,如果有行,它将触发->someDate=Date-UltHf.Fieldsdayspassed

如果没有行,它将触发->someDate=Date-180

像那样的

在VB.NET中

 Dim query = "Select dayspassed from Config"
 Dim dc = New OleDbCommand(query, connection)
 Dim rows As OleDb.OleDbDataReader
 rows = dc.ExecuteReader

 If rows.HasRows Then
   '...... someDate  = Date - rows.item("dayspassed")
 else  
   '...... someDate = Date - 180
 End If

Book->try Google查找

EOF条件意味着你得到的是数据的末尾。。那就意味着没有回程

因此,如果有行,它将触发->someDate=Date-UltHf.Fieldsdayspassed

如果没有行,它将触发->someDate=Date-180

像那样的

在VB.NET中

 Dim query = "Select dayspassed from Config"
 Dim dc = New OleDbCommand(query, connection)
 Dim rows As OleDb.OleDbDataReader
 rows = dc.ExecuteReader

 If rows.HasRows Then
   '...... someDate  = Date - rows.item("dayspassed")
 else  
   '...... someDate = Date - 180
 End If

Book->try Google查找

若语句不是循环语句,则不会多次执行。我认为您的代码正在检查是否返回值,然后使用第一行,否则使用默认值。若语句不是循环语句,则不会多次执行。我认为你的代码是检查是否返回值,然后使用第一行使用默认值。对书来说,如果你特别读过一本书并且认为它是很棒的材料,我试图找到一个建议而不是一个简单的标题:真的,我是VB6迁移者,我在互联网上获得了更多的知识。一步一步地学习。。从简单的案例开始。你可以从这里的每一个案例中学习。。互联网上有MSDN或任何其他更新的参考资料。。祝你好运另外,在vb.net中,大多数的代码都不需要检查.HasRows。您只需说,While rows.Read,当没有行时,.Read方法返回false。@JoelCoehoorn:Thanx。。你是我的主人…:好书,万一你读了一本书,并认为它是很棒的材料,我试图找到一个建议,而不是一个简单的标题:真的,我是VB6迁移者,我在互联网上获得更多的知识,像这样…一步一步地学习。。从简单的案例开始。你可以从这里的每一个案例中学习。。互联网上有MSDN或任何其他更新的参考资料。。祝你好运另外,在vb.net中,大多数的代码都不需要检查.HasRows。您只需说,While rows.Read,当没有行时,.Read方法返回false。@JoelCoehoorn:Thanx。。你是我的主人…: