2016-04-15 12 views
0

私は古いアプリケーションデータを新しいアプリケーションデータベースに移行しようとしています。古いSQLiteデータベースのDateTime列はDateOpenedです。私は古いデータを見ると、私はこの値を参照してください。私は私の新しい(UWP)アプリケーションでそれを照会すると2010-09-16 12:00:00SQLite - > SQLiteの日付書式設定の問題

、クエリは、私はそれがDateTime.MinValueであるためであると想定され、1/1/0001 12:00:00 AMを返します。

結果は新しいデータベースでDateOpenedという値が-62135510400です。これはティックなどの値を格納していますか?どちらのSQLiteデータベースでも、その列はDateTimeフィールドになっているので、どうしてそれらが別々に格納されているのか分かりません。

1/1/2007の別の行がDatePickerから更新され、新しいデータベースに1167694105.602として格納されています。

新しいデータベースにはこのような日付が格納されているとは必ずしも思いませんが、正しくコピーする方法を見つけようとしています。新しいデータベースの値を手動で設定しようとしましたが、通常の日付形式(つまり1/1/2007)で、データベースからの読み取りを試みるとアプリケーションがクラッシュします。

私はここで何が欠けているのか誰かに教えてもらえますか?それはおそらく単純なものですが、私は困惑しています。

EDIT

は、私はそれがstoreDateTimeAsTicks = falseを指定することにより、正しく古いデータベースから値を読み出すために取得することができました。デフォルト値は明らかにtrueなので、私の新しいデータベースはダニとして保存されていますが、文字列形式からダニとして読むと機能していないので、DateTime.MinValueを返します。

+0

解決策として、あなたはそれを解決策として投稿することをお勧めします。 – NoChance

+0

私はまだ回答を投稿できないと思っていましたが、私は2日間自分の回答を受け入れることができません。私は答えとして投稿しました... –

答えて

1

storeDateTimeAsTicks = falseを指定すると、古いデータベースから値を正しく読み取ることができました。デフォルト値は明らかに真ですので、私の新しいデータベースはダニとして保存されますが、文字列フォーマットからダニとして読むと、機能していないので、DateTime.MinValueを返します。