簡體   English   中英

Windows Phone 8.1運行時項目上的SQLite.Net Extensions數據插入錯誤

[英]SQLite.Net Extensions Data insertion error on Windows Phone 8.1 Runtime project

我一直在對所有數據庫操作使用SQLiteAsyncConnection,最近我才知道它不允許表之間的關聯。 現在,我正在移動代碼以使用支持擴展的SQLite.Net擴展。 當我將日期時間數據插入表中時,我發現了一個奇怪的問題。 它完全更改了插入的日期時間。

App.db2.Insert(new FrequentlyAssignedShifts()
                {
                    ShiftStart = Convert.ToDateTime(btnShiftStart.Content.ToString()),
                    ShiftEnd = Convert.ToDateTime(btnShiftEnd.Content.ToString()),
                });

這就是建立連接的方式。

        string databasePath = Path.Combine(Windows.Storage.ApplicationData.Current.LocalFolder.Path, "Scheduler.sqlite");
    public static SQLiteConnection db2;
    var platform = new SQLite.Net.Platform.WinRT.SQLitePlatformWinRT();
    db2 = new SQLiteConnection(platform, databasePath);

我使用斷點檢查到最后一點,是否插入了正確的數據。 一切似乎都很好,它是從按鈕控件中獲取正確的日期,但是一旦它通過了代碼的這一部分,日期值就會改變。 “ ShiftStart&ShiftEnd”變量是表中的日期時間變量。 有人可以建議。

感謝您閱讀這篇文章。

也許為時已晚,但據我所知,時間在數據庫中保存為滴答,所以不要使用“ Date”或“ Timestamp”或其他任何東西,而應使用bigint,因此,該字段將使用UTC將時間保存為滴答,一旦從數據庫中檢索到值,請使用DateTime和vioala中的函數“ ToLocalTime()”!

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM