考慮這個代碼片段:如何在C#中的SQLite數據庫中插入和查詢DateTime對象?
string sDate = string.Format("{0:u}", this.Date);
Conn.Open();
Command.CommandText = "INSERT INTO TRADES VALUES(" + "\"" + this.Date + "\"" + "," +this.ATR + "," + "\"" + this.BIAS + "\"" + ")";
Command.ExecuteNonQuery();
注意該命令的 「this.Date」 的一部分。現在Date是C#環境DateTime類型的一個對象,數據庫不存儲它(在SQLite論壇的某處,它寫道ADO.NET封裝器會自動將DateTime類型轉換爲ISO1806格式)
但不是這樣。我使用sDate(顯示在第一行),然後正確存儲。
我的探頭實際上並沒有在這裏結束。即使我使用「sDate」,我也必須通過查詢來檢索它。而考慮創建問題
這種格式
SELECT * FROM <Table_Name> WHERE DATES = "YYYY-MM-DD"
回報沒有任何查詢,而用「>」或更換「=」「<」返回正確的結果。
所以我的觀點是:
如何查詢從SQLite數據庫日期變量。
,如果有與我將其存儲(即非1806兼容)的方式有問題,那麼我該如何使之符合
你正在使用哪個SQLite庫? – SLaks
System.Data.SQLite,用於SQLite的ADO.NET包裝器 – Soham
有幾個用於SQLite的ADO.NET包裝器。 System.Data.SQLite是最常見的,但如果您將其稱爲「ADO.NET包裝器」,則其他包裝提供程序將被冒犯。 –