我正在使用SQLite數據庫的C#WPF項目。我試圖從sqlite數據庫中的表中檢索數據並添加到數據集,以便我可以將數據集添加到數據網格的項源。其中一列的是一個DateTime列,但我收到以下錯誤:使用Sqlite數據庫填充包含DateTime列的數據集
String was not recognized as a valid DateTime.
下面是我怎麼了檢索數據
private DataSet getAlarmsForSqlite()
{
DataSet ds = new DataSet();
try
{
using (ConnectSQLiteDatabase db = new ConnectSQLiteDatabase(dbPassword))
{
string query = "SELECT * FROM alarms ORDER BY date";
SQLiteDataAdapter da = new SQLiteDataAdapter(query, db.conn);
da.Fill(ds);
}
}
catch (SQLiteException ex)
{
Console.WriteLine("Failed to get alarms. Sqlite Error: {0}", ex.Message);
return null;
}
return ds;
}
並在下面的表
創建語句CREATE TABLE `alarms` (`id` int(11) NOT NULL, `date` datetime NOT NULL,
`type` varchar(50) NOT NULL,
`message` mediumtext NOT NULL,
`level` varchar(45) NOT NULL,
`page` varchar(500) NOT NULL,
`acknowledged` char(1) DEFAULT '0', PRIMARY KEY (`id`))
感謝您提供任何幫助。
我不確定,但那個名爲'date'的列有點可疑。你可以嘗試用方括號封裝它嗎? – Steve 2013-04-22 20:06:33
不確定你的意思,以什麼方式懷疑,以及方括號會實現什麼 – Boardy 2013-04-22 20:07:29
我懷疑它被解釋爲關鍵字,我的意思是'SELECT * FROM alarms ORDER BY [date]',實際上SQLite希望圍繞關鍵字使用雙引號但方括號被接受爲兼容性,很容易寫http://www.sqlite.org/lang_keywords.html – Steve 2013-04-22 20:09:57