1

これらのコード行は、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 を学ぶための良い本をお勧めしてもらえますか?)

前もって感謝します。

4

1 に答える 1

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

予約 --> Google で検索してみる

于 2013-05-24T17:23:36.570 に答える