format の日付を持つ datatable に列がありますdd/MM/yyyy HH:mm
。以下のコードを使用してデータテーブルを埋めますが、これは複数の select ステートメントに共通しているため、データテーブルを埋める前に列とそのデータ型を指定できません。データを入力した後の操作は、私には受け入れられます。
data_adapt = New OracleDataAdapter(query, OraConn)
dt = New DataTable
data_adapt.Fill(dt)
ページングの場合、スキップを使用してデータテーブルのコピーを作成し、以下のようにテイクします
dtLineupCopy = New DataTable
dtLineupCopy = dtLineup.AsEnumerable().Skip(startRows).Take(pageSize)).CopyToDataTable()
問題は、Compute メソッドを使用すると、列の値が日付型として扱われず、最小値ではなく列からランダムな日付値が返されることです。
Arvdate = dtLineupCopy.Compute("Min(Arrivaldate)", "")
列のデータ型を変換する方法はありますか?
また、日時型の新しい列を追加しようとしましたが、エラーがスローされますSystem.FormatException: String was not recognized as a valid DateTime
dtLineupCopy.Columns.Add("ArvDate", getType(DateTime), "CONVERT(Arrivaldate, 'System.DateTime')")
dtLineupCopy の Arrivaldate 列のデータ。
22/09/2012 01:02
27/09/2012 17:01
1/10/2012 1:02
13/10/2012 07:26
14/10/2012 19:47
20/10/2012 00:00
20/ 2012 年 10 月 00:00