我有这些代码行,从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语句执行多次直到文件结束? 只有当我的SQL查询中没有行时,else部分才会进入吗?
(你们可以推荐好书来学习VB.NET,这样我就可以停止制作新手问题了吗?)
提前致谢。
答案 0 :(得分:4)
EOF条件意味着你到达数据的末尾..这意味着没有行返回
所以,如果有(a)行会触发 - > someDate = Date - UltHf.Fields(“dayspassed”)
如果没有排它 - >> 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
预订 - >尝试谷歌找到