トップ回答者
条件に合った値を、データベースから抽出するには?

質問
-
お世話になっております。
主キーが、DateTime型の日時が入っています。
このデータを、現在時刻と比較して出力させたいと思います。
但し、複数ヒットしたとしても、最初にヒットしたデータを出力させたいと思います。
Private Sub ButtonFind_Click(sender As Object, e As EventArgs) Handles ButtonFind.Click dim dTbl As DataTable dTbl = MailDataSet.Tables("mail_t") Dim str As String ' 現在の日付と時刻を取得する Dim dtNow As DateTime = DateTime.Now ' 取得した日付と時刻を表示する Debug.WriteLine(dtNow.ToString()) str = "日時 <= '" str &= dtNow.ToString() str &= "'" Debug.WriteLine(str) If dTbl.Select(str).Length > 0 Then '対象レコードが存在する場合の処理 Debug.WriteLine(dTbl.Select(str).ToString) Else '対象レコードが存在しない場合の処理 Debug.WriteLine("対象レコードが存在しない") End If End Sub
このコードを実行すると、次の結果になりました。
日時 <= '2013/05/05 23:18:09'
dbtest.mailDataSet+mail_tRow[]
ヒットしたであろう「mail_tRow」の値を、Debug.WriteLineで表示させたいと思います。
どうしたら良いでしょうか。
ご教授をお願いします。
回答
すべての返信
-
-
-
ただ、以前の質問 のキャプチャ画面を見ると新しいVSの気がします。。。
最初の投稿で ByVal が省略されていることから、少なくとも VS2010 SP1 以降だろうとは予想しています。(Dim が dim と書かれていることから、フォーラム投稿時に修正した可能性も無いわけではありませんが)
しかし、たとえ VS2012 を使用していたとしても、旧バージョンのプロジェクトをアップグレードした場合などにおいて、拡張メソッドが使えないことがありえます。具体的には以下のようなケースです。
- System.Linq名前空間がインポートされていない場合。
- ターゲットフレームワークが .NET Framework 3.0 以下になっていた場合。